示例#1
0
        private async Task searchTableAsync()
        {
            getadvs gn      = new getadvs();
            var     allnews = await gn.GetAllAdvs();

            table.Source = new ListsAdvsModelSource(allnews.ToArray(), this, searchBar.Text);
            //tableSource.PerformSearch(searchBar.Text);


            table.ReloadData();
        }
示例#2
0
        // This method will add the UIRefreshControl to the table view if
        // it is available, ie, we are running on iOS 6+
        void AddRefreshControl()
        {
            if (UIDevice.CurrentDevice.CheckSystemVersion(6, 0))
            {
                // the refresh control is available, let's add it
                RefreshControl = new UIRefreshControl();
                RefreshControl.ValueChanged += async(sender, e) =>
                {
                    getadvs gn      = new getadvs();
                    var     allnews = await gn.GetAllAdvs();

                    table.Source = new ListsAdvsModelSource(allnews.ToArray(), this, "");
                    await RefreshAsync();
                };
                useRefreshControl = true;
            }
        }
示例#3
0
        public override async void ViewDidLoad()
        {
            base.ViewDidLoad();


            var btn = new UIButton(UIButtonType.Custom);

            btn.Frame = new CGRect(0, 0, 40, 40);
            btn.SetImage(UIImage.FromBundle("barlogo"), UIControlState.Normal);
            showIndicator();
            searchBar = new UISearchBar()
            {
                Placeholder   = " ",
                Prompt        = " ",
                ShowsScopeBar = true
            };
            searchBar.SizeToFit();
            searchBar.AutocorrectionType            = UITextAutocorrectionType.No;
            searchBar.AutocapitalizationType        = UITextAutocapitalizationType.None;
            searchBar.ReturnKeyType                 = UIReturnKeyType.Done;
            searchBar.EnablesReturnKeyAutomatically = false;
            this.NavigationItem.SetLeftBarButtonItem(new UIBarButtonItem(btn), true);
            this.NavigationItem.TitleView  = searchBar;
            searchBar.SearchButtonClicked += (sender, e) => {
                //  Search();
            };
            searchBar.TextChanged         += (sender, e) =>
            {
                //this is the method that is called when the user searches
                searchTableAsync();
            };
            searchBar.CancelButtonClicked += (sender, e) =>
            {
                searchBar.ResignFirstResponder();
            };
            searchBar.SelectedScopeButtonIndexChanged += (sender, e) => { searchBar.ResignFirstResponder(); };
            searchBar.SearchButtonClicked             += (sender, e) =>
            {
                //  searchTable();
                searchBar.ResignFirstResponder();
            };

            getadvs gn      = new getadvs();
            var     allnews = await gn.GetAllAdvs();

            if (allnews != null)
            {
                table = new UITableView(new CGRect(0, 20, View.Bounds.Width, View.Bounds.Height - 20));
                table.AutoresizingMask   = UIViewAutoresizing.All;
                table.RowHeight          = 435f;
                table.EstimatedRowHeight = 435f;
                table.Source             = new ListsAdvsModelSource(allnews.ToArray(), this, "");

                await RefreshAsync();

                AddRefreshControl();
                //table.TableHeaderView = searchBar;
                Add(table);
                hideIndicator();
                table.Add(RefreshControl);
            }
            else
            {
                var alrt = UIAlertController.Create("Nuca", "يرجي التاكد من الاتصال بالانترنت", UIAlertControllerStyle.Alert);
                alrt.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Default, null));
                PresentViewController(alrt, true, null);
                hideIndicator();
            }
        }