public CustomSearchController(ViewController owner, UISearchBar searchBar, UITableView searchPredictionTable, UIView shadowViewHack, List <Room> rooms)
        {
            _searchBar             = searchBar;
            _searchPredictionTable = searchPredictionTable;
            owner.InvokeOnMainThread(delegate() {
                _searchPredictionTable.Alpha = 0;
                shadowViewHack.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;
                shadowViewHack.Alpha         = 1;
            };
            _searchBar.OnEditingStopped += (sender, e) => {
                _searchPredictionTable.Alpha = 0;
                shadowViewHack.Alpha         = 0;
                _searchBar.ResignFirstResponder();
            };
        }
		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 ();

            };

		}
Exemple #3
0
        public CustomDirectionsController(ViewController owner, UITableView searchPredictionTable, List <Room> rooms)
        {
            _directionsTable = searchPredictionTable;


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