コード例 #1
0
		public CustomSearchController (ViewController owner, UISearchBar searchBar, UITableView searchPredictionTable, List<Room> rooms)
		{
			_searchBar = searchBar;
			_searchPredictionTable = searchPredictionTable;
			owner.InvokeOnMainThread (delegate() {
				_searchPredictionTable.Alpha = 0;
			});

			tableSource = new TableSource (owner, rooms);
			_searchPredictionTable.Source = tableSource;

			_searchBar.TextChanged += (sender, e) => {
				owner.InvokeOnMainThread (delegate() {
                    tableSource.tableItems = rooms.FindAll ((room) => room.Name.ToLower().Contains (e.SearchText.ToLower())).ToArray ();
					_searchPredictionTable.ReloadData();
				});
			};

			_searchBar.CancelButtonClicked += (sender, e) => {
				_searchBar.ShowsCancelButton = false;
				_searchBar.ResignFirstResponder();
			};

			_searchBar.OnEditingStarted += (sender, e) => {
				_searchBar.ShowsCancelButton = true;
				_searchPredictionTable.Alpha = 1;
			};
            _searchBar.OnEditingStopped += (sender, e) => {
                _searchPredictionTable.Alpha = 0;
                _searchBar.ResignFirstResponder ();

            };

		}
コード例 #2
0
ファイル: tableSource.cs プロジェクト: dcbright01/Navigator
		public TableSource (ViewController owner, List<Room> items)
        {
			tableItems = items.ToArray();
			_owner = owner;
        }