public static ObservableSearchDelegate AddSearchBar(this BaseTableViewController @this, out UISearchBar searchBar) { searchBar = new UISearchBar(new CGRect(0f, 0f, 320f, 44f)); searchBar.AutoresizingMask = UIViewAutoresizing.FlexibleWidth; var searchDelegate = new ObservableSearchDelegate(); searchBar.Delegate = searchDelegate; @this.TableView.TableHeaderView = searchBar; return(searchDelegate); }
protected virtual void CreateSearchBar() { var searchableViewModel = ViewModel as IProvidesSearchKeyword; if (searchableViewModel == null) { return; } var searchBar = new UISearchBar(new CGRect(0f, 0f, 320f, 44f)); var searchDelegate = new ObservableSearchDelegate(); searchBar.AutoresizingMask = UIViewAutoresizing.FlexibleWidth; searchBar.Delegate = searchDelegate; OnActivation(d => { d(searchDelegate.SearchTextChanging.Subscribe(x => searchableViewModel.SearchKeyword = x)); TableView.TableHeaderView = searchBar; d(Disposable.Create(() => TableView.TableHeaderView = null)); }); }