Exemple #1
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var vm = new SpeakersModel();

            CustomTableView.RowHeight = 70;
            CustomTableView.RegisterNibForCellReuse(CustomTableViewCell.Nib, nameof(CustomTableViewCell));

            GetSpeakersButton.TouchUpInside += async(sender, e) =>
            {
                // ボタンを利用不可、グルグルを表示にします。
                GetSpeakersButton.Enabled = false;
                SVProgressHUD.Show();

                await vm.GetSpeakersAsync();

                // TableViewのSourceをCustomTableViewSourceでnewします。
                CustomTableView.Source = new CustomTableViewSource(this, vm.Speakers);
                CustomTableView.ReloadData();

                // グルグルを非表示、ボタンを利用可にします。
                SVProgressHUD.Dismiss();
                GetSpeakersButton.Enabled = true;
            };
        }
Exemple #2
0
 public async Task Show(string message)
 {
     try
     {
         SVProgressHUD.SetDefaultStyle(SVProgressHUDStyle.Custom);
         SVProgressHUD.ShowWithMaskType(SVProgressHUDMaskType.Black);
         SVProgressHUD.SetDefaultMaskType(SVProgressHUDMaskType.Black);
         SVProgressHUD.SetDefaultAnimationType(SVProgressHUDAnimationType.Flat);
         UIView.AnimationsEnabled = true;
         SVProgressHUD.SetForegroundColor(UIKit.UIColor.Black);
         SVProgressHUD.Show();
     }
     catch (Exception ex)
     {
     }
 }
Exemple #3
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var vm = new ViewModels.SpeakersViewModel();

            CustomTableView.EstimatedRowHeight = 70;
            CustomTableView.RegisterNibForCellReuse(CustomTableViewCell.Nib, nameof(CustomTableViewCell));
            CustomTableView.Source = new CustomTableViewSource();

            GetSpeakersButton.TouchUpInside += async(sender, e) =>
            {
                // ボタンを利用不可、グルグルを表示にします。
                GetSpeakersButton.Enabled = false;
                SVProgressHUD.Show();

                // vmのGetSpeakersメソッドを実行します。
                await vm.GetSpeakers();

                var items = vm.Speakers;

                // Name、Title、UIImageのプロパティを持つTableItemのListにデータを移し替えます。
                // 移し替える前にImageUrlをUIImageに変換して格納します。
                var tableItems = new List <TableItem>();
                foreach (var x in items)
                {
                    var image = await this.LoadImage(x.Avatar);

                    tableItems.Add(new TableItem(x.Name, x.Title, image));
                }

                // 用意してあるCustomListViewSourceを再度読み込み、一度クリアしてからデータを流し込み、再表示します。
                var src = CustomTableView.Source as CustomTableViewSource;
                src.Items.Clear();
                foreach (var x in tableItems)
                {
                    src.Items.Add(x);
                }
                CustomTableView.ReloadData();

                // グルグルを非表示、ボタンを利用可にします。
                SVProgressHUD.Dismiss();
                GetSpeakersButton.Enabled = true;
            };
        }
Exemple #4
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // Perform any additional setup after loading the view, typically from a nib.
            this.showStatusButton.TouchUpInside += (sender, e) => {
                SVProgressHUD.Show("Hello");
            };
            this.dismissButton.TouchUpInside += (sender, e) => {
                SVProgressHUD.Dismiss();
            };
            this.dismissSuccess.TouchUpInside += (sender, e) => {
                SVProgressHUD.DismissWithSuccess("Success");
            };
            this.dismissError.TouchUpInside += (sender, e) => {
                SVProgressHUD.DismissWithError("Failed!");
            };
        }
Exemple #5
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var vm = new UITableViewSample.Models.SpeakersModel();

            CustomTableView.RowHeight = 70;
            CustomTableView.RegisterNibForCellReuse(CustomTableViewCell.Nib, nameof(CustomTableViewCell));

            GetSpeakersButton.TouchUpInside += async(sender, e) =>
            {
                // ボタンを利用不可、グルグルを表示にします。
                GetSpeakersButton.Enabled = false;
                SVProgressHUD.Show();

                // vmのGetSpeakersメソッドを実行します。
                await vm.GetSpeakersAsync();

                // Name、Title、UIImageのプロパティを持つTableItemのListにデータを移し替えます。
                // 移し替える前にImageUrlをUIImageに変換して格納します。
                var tableItems = new List <TableItem>();
                foreach (var x in vm.Speakers)
                {
                    var image = await this.LoadImage(x.Avatar);

                    tableItems.Add(new TableItem(x.Name, x.Title, image));
                }

                // TableViewのSourceをCustomTableViewSourceでnewします。
                CustomTableView.Source = new CustomTableViewSource(tableItems);
                CustomTableView.ReloadData();

                // グルグルを非表示、ボタンを利用可にします。
                SVProgressHUD.Dismiss();
                GetSpeakersButton.Enabled = true;
            };

            #region PropertyChangedを使用する場合
            //vm.PropertyChanged += Vm_PropertyChanged;
            #endregion
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var speakers = new SpeakersModel();

            SpeakersTableView.RowHeight = 70;
            SpeakersTableView.RegisterNibForCellReuse(SpeakersTableViewCell.Nib, nameof(SpeakersTableViewCell));

            GetSpeakersButton.TouchUpInside += async(object sender, EventArgs e) =>
            {
                // クルクルを表示、ボタンを利用不可にします。
                GetSpeakersButton.Enabled = false;
                SVProgressHUD.Show();

                // vmのGetSpeakersメソッドを実行します。
                await speakers.GetSpeakersAsync();

                // Name、Title、UIImageのプロパティを持つTableItemのListにデータを移し替えます。
                // 移し替える前にImageUrlをUIImageに変換して格納します。
                var tableItems = new List <TableItem>();
                foreach (var x in speakers.Speakers)
                {
                    var image = await this.LoadImage(x.Avatar);

                    tableItems.Add(new TableItem(x.Name, x.Title, image));
                }

                // TableViewのSourceをCustomTableViewSourceでnewします。
                SpeakersTableView.Source = new SpeakersTableViewSource(tableItems);
                SpeakersTableView.ReloadData();

                // クルクルを非表示、ボタンを利用可にします。
                SVProgressHUD.Dismiss();
                GetSpeakersButton.Enabled = true;
            };
        }