UIActivityIndicatorView、UIProgressView 活動與進度列指示器-IOS開發

來源:互聯網
上載者:User
聲明

歡迎轉載,但是請尊重作者勞動成果,轉載請保留此框內聲明,謝謝。
文章出處:http://blog.csdn.net/iukey

活動指標(UIActivityIndicatorView)可以告知使用者有一個操作進行中中。進度列指示器(UIProgressView )也具有同樣功能,而且還可以告知使用者離操作結束還多遠。

這兩個指標都是派生自UIView,所以他們是視圖,也可以附著在視圖上。

一、UIActivityIndicatorView 活動指標

1.建立

UIActivityIndicatorView* activityIndicatorView = [ [ UIActivityIndicatorView  alloc ] initWithFrame:CGRectMake(250.0,20.0,30.0,30.0)];

2. 屬性設定

風格:

activityIndicatorView.activityIndicatorViewStyle= UIActivityIndicatorViewStyleGray;

系統給你提供了3種風格:

UIActivityIndicatorViewStyleWhiteLarge                    大型白色指標
UIActivityIndicatorViewStyleWhite      標準尺寸白色指標
UIActivityIndicatorViewStyleGray    灰色指標,用於白色背景
自動隱藏

如果希望指標停止後自動隱藏,那麼要設定hidesWhenStoped屬性為YES。預設是YES。設定為NO停止後指標仍會顯示。

activityIndicatorView.hidesWhenStoped = NO;

3.顯示

可以將它附著在任何視圖上,比如表格單元、或者視圖:

[  self.view addSubview:activityIndicatorView ];

4.啟動和停止

[  activityIndicatorView startAnimating ];//啟動[  activityIndicatorView stopAnimating ];//停止

二、UIProgressView  進度列指示器

UIProgressView 與UIActivityIndicatorView 相似,只不過它提供了一個介面讓你可以顯示一個類似進度條的東西,這樣就能讓使用者知道當前操作完成了多少。

1.建立

UIProgressView* progressView = [ [ UIProgressView   alloc ] initWithFrame:CGRectMake(150.0,20.0,130.0,30.0)];

2. 屬性設定

風格:

progressView .UIProgressViewStyle= UIProgressViewStyleDefault;

系統給你提供了2種風格:

UIProgressViewStyleDefault                 標準進度條
UIProgressViewStyleDefault    深灰色進度條,用於工具列中

3.顯示

[  self.toolBar addSubview:progressView ];

4.進度

 當它顯示出來時你的程式可以更新它的進度,屬性progre是一個0.0到1.0之間的浮點數:
progressView.progress = 0. 5;

三、網路活動指標

當你的應用程式使用網路時,應當在iPhone的狀態條上放置一個網路指標,警告使用者正在使用網路。這時你可以用UIApplication的一個名為networkActivityIndicatorVisible的屬性。通過設定這個可以啟用或禁用網路指標:UIApplication* app = [ UIApplication  sharedApplication ];app.networkActivityIndicatorVisible = YES;

四、拓展

是不是覺得又學了點新東西呢?確實。不過我還有個更好的東西推薦:MBProgressHUD   https://github.com/jdg/MBProgressHUD 一個更NB的第三方進度列指示器,你可以按照它提供的例子去使用它,很強大的。不過有一點我要提醒你的是它是非同步,所以並不能阻塞你當前的程式,如果你想阻塞你的程式還要在邏輯控制上做一點修改。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.