UIActivityIndicatorView用於表示一些操作正在處理中,但無法預知處理時間和進度。它在操作進行中顯示一個動態的 旋轉圈。和任何其它視圖一樣,只要把UIActivityIndicatorView作為子視圖進行添加就可以使用它了。同樣,要停止動畫並讓這個活動指示器消失,則調用StartAnimating方法。同樣,要停止動畫,並讓這個活動指示器消失,則調用StopAnimating。值得注意的是,任何運行時間較長的任務都需要另外開啟一個線程;否則,會阻礙主線程,導致活動指示器無法顯示。
UIActivityIndicatorView _activityView; public override void ViewDidLoad () { base.ViewDidLoad (); //show loading... _activityView = new UIActivityIndicatorView (); _activityView.Frame = new RectangleF (0, 0, 50, 50); _activityView.Center = this.View.Center; _activityView.ActivityIndicatorViewStyle = UIActivityIndicatorViewStyle.WhiteLarge; _activityView.AutoresizingMask = UIViewAutoresizing.FlexibleMargins; this.View.AddSubview (_activityView); _activityView.StartAnimating (); //添加表格 TBView = new UITableView (this.View.Bounds); TBView.BackgroundColor = UIColor.Clear; TBView.AutoresizingMask = UIViewAutoresizing.All; //TBView.Style = UITableViewStyle.Grouped; this.View.Add (TBView); System.Threading.Thread t = new System.Threading.Thread (ShowTable); t.Start (); }
private void ShowTable() { System.Threading.Thread.Sleep (3000); using (var pool=new NSAutoreleasePool()) { this.InvokeOnMainThread (delegate { ListAT = ArticleBusiness.GetData (); //獲取數據 DownLoadFile.BindTableView (this, TBView, ListAT, KeyCenter.Key_LoadedImgPath); _activityView.StopAnimating(); _activityView.RemoveFromSuperview(); }); } }