2008-11-12 102 views
4

我正在使用UIActivityIndi​​catorView向用户显示正在发生的事情,让他们等待。但UIActivityIndi​​catorView看起来很小,没有背景色,对用户来说也不是很明显。而在iPhone SDK的UIImagePickerController中,它使用类似的机制,但黑色背景以及除指示符以外的一些文本。UIActivityIndi​​catorView的背景颜色

我想知道是否有任何现有的组件来做这个任务,或者我必须实现我自己的类来执行该任务。

任何建议都非常受欢迎,在此先感谢。

回答

13

如果你只是想你UIActivityIndi​​ctatorView的不同的背景颜色,你可以只发送setBackgroundColor消息的对象,即:

[activityIndicator setBackgroundColor:[UIColor blackColor]]; 

顺便说一句,你可以改变指示器的大小以及。只需用更大的矩形做setFrame或initWithFrame即可。记住UIActivityIndi​​catorView从UIView继承,所以你可以获得UIView的所有定制。

2

似乎我还是要创建一个单独的视图,因为如果放大框架,指示器将自动放大。

谢谢。

5

试试这个简单的方法,它的工作很适合我....

UIActivityIndicatorView *activityIndicator= [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(0, 0, 50, 50)]; 
activityIndicator.layer.cornerRadius = 05; 
activityIndicator.opaque = NO; 
activityIndicator.backgroundColor = [UIColor colorWithWhite:0.0f alpha:0.6f]; 
activityIndicator.center = self.view.center; 
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleGray; 
[activityIndicator setColor:[UIColor colorWithRed:0.6 green:0.8 blue:1.0 alpha:1.0]]; 
[self.view addSubview: activityIndicator]; 

添加以下行同时加载你的观点

//-- Add this line while processing to load your view 
    [activityIndicator startAnimating]; 

//-- Add this line when after you view loaded 
    [activityIndicator stopAnimating];