public override void ViewDidLoad() { base.ViewDidLoad(); var vm = (IssueMilestonesViewModel)ViewModel; BindCollection(vm.Milestones, x => { var e = new MilestoneElement(x); e.Tapped += () => { if (vm.SelectedMilestone != null && string.Equals(vm.SelectedMilestone, x.Name)) vm.SelectedMilestone = null; else vm.SelectedMilestone = x.Name; }; if (vm.SelectedMilestone != null && string.Equals(vm.SelectedMilestone, x.Name)) e.Accessory = UITableViewCellAccessory.Checkmark; return e; }); vm.Bind(x => x.SelectedMilestone, x => { if (Root.Count == 0) return; foreach (var m in Root[0].Elements.Cast<MilestoneElement>()) m.Accessory = (x != null && string.Equals(m.Milestone.Name, x)) ? UITableViewCellAccessory.Checkmark : UITableViewCellAccessory.None; Root.Reload(Root[0], UITableViewRowAnimation.None); }); var _hud = new Hud(View); vm.Bind(x => x.IsSaving, x => { if (x) _hud.Show("Saving..."); else _hud.Hide(); }); }
public override void ViewDidLoad() { NavigationItem.LeftBarButtonItem = new UIBarButtonItem(Theme.CurrentTheme.BackButton, UIBarButtonItemStyle.Plain, (s, e) => NavigationController.PopViewController(true)); base.ViewDidLoad(); _hud = new Hud(View); var loadableViewModel = ViewModel as LoadableViewModel; if (loadableViewModel != null) { loadableViewModel.Bind(x => x.IsLoading, x => { if (x) { MonoTouch.Utilities.PushNetworkActive(); _hud.Show("Loading..."); if (ToolbarItems != null) { foreach (var t in ToolbarItems) t.Enabled = false; } } else { MonoTouch.Utilities.PopNetworkActive(); _hud.Hide(); if (ToolbarItems != null) { foreach (var t in ToolbarItems) t.Enabled = true; } } }); } }
public override void ViewDidLoad() { TableView.RegisterNibForCellReuse(RepositoryCellView.Nib, RepositoryCellView.Key); TableView.RowHeight = UITableView.AutomaticDimension; TableView.EstimatedRowHeight = 80f; base.ViewDidLoad(); _hud = new Hud(View); var vm = (RepositoriesExploreViewModel)ViewModel; var search = (UISearchBar)TableView.TableHeaderView; search.TextChanged += (sender, e) => vm.SearchText = search.Text; vm.Bind(x => x.SearchText, x => search.Text = x); search.SearchButtonClicked += (sender, e) => { search.ResignFirstResponder(); vm.SearchCommand.Execute(null); }; vm.Bind(x => x.IsSearching, x => { if (x) _hud.Show("Searching..."); else _hud.Hide(); }); BindCollection(vm.Repositories, repo => { var description = vm.ShowRepositoryDescription ? repo.Description : string.Empty; var avatarUrl = new Avatar(repo.Logo).ToUrl(); var sse = new RepositoryElement(repo.Name, description, repo.Owner, avatarUrl, Images.RepoPlaceholder); sse.Tapped += () => vm.GoToRepositoryCommand.Execute(repo); return sse; }); }