您的位置:首页 > 产品设计 > UI/UE

UIActivityIndicatorView、UIProgressView 活动与进度指示器 (实例)

2013-02-26 10:01 531 查看
活动指示器(UIActivityIndicatorView)可以告知用户有一个操作正在进行中。进度指示器(UIProgressView )也具有同样功能,而且还可以告知用户离操作结束还多远。

这两个指示器都是派生自UIView,所以他们是视图,也可以附着在视图上。

一、UIActivityIndicatorView 活动指示器

1.创建

C代码







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

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

2. 属性设置

风格:

C代码







activityIndicatorView.activityIndicatorViewStyle= UIActivityIndicatorViewStyleGray;

activityIndicatorView.activityIndicatorViewStyle= UIActivityIndicatorViewStyleGray;

系统给你提供了3种风格:

Java代码







UIActivityIndicatorViewStyleWhiteLarge //大型白色指示器 UIActivityIndicatorViewStyleWhite //标准尺寸白色指示器 UIActivityIndicatorViewStyleGray //灰色指示器,用于白色背景
UIActivityIndicatorViewStyleWhiteLarge   //大型白色指示器
UIActivityIndicatorViewStyleWhite      //标准尺寸白色指示器
UIActivityIndicatorViewStyleGray    //灰色指示器,用于白色背景

自动隐藏

如果希望指示器停止后自动隐藏,那么要设置hidesWhenStoped属性为YES。默认是YES。设置为NO停止后指示器仍会显示。

C代码







activityIndicatorView.hidesWhenStoped = NO;

activityIndicatorView.hidesWhenStoped = NO;

3.显示

可以将它附着在任何视图上,比如表格单元、或者视图:

C代码







[self.view addSubview:activityIndicatorView ];

[self.view addSubview:activityIndicatorView ];


4.启动和停止

C代码







[activityIndicatorView startAnimating ]; //启动
[activityIndicatorView stopAnimating ]; //停止

[activityIndicatorView startAnimating ];  //启动
[activityIndicatorView stopAnimating ];  //停止

二、UIProgressView 进度指示器

UIProgressView 与UIActivityIndicatorView 相似,只不过它提供了一个接口让你可以显示一个类似进度条的东西,这样就能让用户知道当前操作完成了多少。

1.创建

C代码







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

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

2. 属性设置

风格:

C代码







progressView .UIProgressViewStyle= UIProgressViewStyleDefault;

progressView .UIProgressViewStyle= UIProgressViewStyleDefault;

系统给你提供了2种风格:

C代码







UIProgressViewStyleDefault //标准进度条
UIProgressViewStyleDefault //深灰色进度条,用于工具栏中

UIProgressViewStyleDefault    //标准进度条
UIProgressViewStyleDefault    //深灰色进度条,用于工具栏中

3.显示

C代码







[self.toolBar addSubview:progressView ];

[self.toolBar addSubview:progressView ];


4.进度

当它显示出来时你的程序可以更新它的进度,属性progre是一个0.0到1.0之间的浮点数:

C代码







progressView.progress = 0. 5;

progressView.progress = 0. 5;

三、网络活动指示器

当你的应用程序使用网络时,应当在iPhone的状态条上放置一个网络指示器,警告用户正在使用网络。这时你可以用UIApplication的一个名为networkActivityIndicatorVisible的属性。通过设置这个可以启用或禁用网络指示器:

C代码







UIApplication* app = [ UIApplication sharedApplication ];
pp.networkActivityIndicatorVisible = YES;

UIApplication* app = [ UIApplication  sharedApplication ];
pp.networkActivityIndicatorVisible = YES;

四、拓展

是不是觉得又学了点新东西呢?确实。不过我还有个更好的东西推荐:MBProgressHUD https://github.com/jdg/MBProgressHUD 一个更NB的第三方进度指示器,你可以按照它提供的例子去使用它,很强大的。不过有一点我要提醒你的是它是异步的,所以并不能阻塞你当前的程序,如果你想阻塞你的程序还要在逻辑控制上做一点修改。

来源:/article/1425968.html

实例:

UIActivityIndicatorView 通常都会使用在读取 Loading 画面中,用来表示程式仍在进行,只是需要时间来完成目前步骤,而 UIActivityIndicatorView 也可以直接从介面编辑器 Interface Builder 里的物件群拉出来使用,不过绝大部分在使用上还是採用动态产生(使用程式码产生)比较多,下列程式码演示如何在画面上建立一个 UIActivityIndicatorView,请看以下程式码。

C代码







//設定背景
UIImage *pattern = [UIImage imageNamed:@"bg.png"];
[self.view setBackgroundColor:[UIColor colorWithPatternImage:pattern]];

//建立UIActivityIndicatorView並設定風格
UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];

//開始UIActivityIndicatorView動畫(旋轉效果)

[indicator startAnimating];

//設定位置並加入畫面
indicator.center = CGPointMake(160, 100);
[self.view addSubview:indicator];
[indicator release];

//設定背景
UIImage *pattern = [UIImage imageNamed:@"bg.png"];
[self.view setBackgroundColor:[UIColor colorWithPatternImage:pattern]];

//建立UIActivityIndicatorView並設定風格
UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];

//開始UIActivityIndicatorView動畫(旋轉效果)
[indicator startAnimating];

//設定位置並加入畫面
indicator.center = CGPointMake(160, 100);
[self.view addSubview:indicator];
[indicator release];

如果想要停止 UIActivityIndicatorView,则直接使用 stopAnimating 即可,UIActivityIndicatorView 就会重画面上消失。

C代码







[indicator stopAnimating];

[indicator stopAnimating];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐