将UIActivityIndi​​cator连接到UIButton

时间:2009-06-22 05:58:35

标签: cocoa-touch android-activity indicator

所有这些Xcode的新东西 - 我有一些UIButton链接到电影&来自我网站的音乐文件 - 它们工作得很好,只是在加载MoviePlayer时会有一些延迟时间,好像什么也没发生。

我想设置一个UIActivityIndi​​cator - 我无法找到一种简单的方法来实现它。

如果是这样,我每个按钮需要一个吗?

你可以帮忙吗? 谢谢卡尔

2 个答案:

答案 0 :(得分:9)

如果你想直接在你的按钮上添加一个ActivityIndi​​cator,这里有一些代码可以做到这一点:

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(0,0,40,40); // increase width value if you want to add text   
[button addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
[button setImage:[UIImage imageNamed:@"location.png"] forState:UIControlStateNormal];

UIActivityIndicatorView *actIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
actIndicator.tag = 123456;
[actIndicator startAnimating];
actIndicator.frame = CGRectMake(7, 7, 26, 26);
[button addSubview:actIndicator];
[actIndicator release];

这会显示活动视图,但您可以在开头隐藏它,也可以通过其标记访问指标来切换活动指示器。

答案 1 :(得分:1)

您创建一个活动指示器并将其放在您喜欢的屏幕上 - 然后您告诉它在您请求媒体时开始动画,并在您收到回放开始时停止动画。

您可以通过编程方式或在IB中执行此操作,创建IBOutlet,以便您可以告诉指示符开始/停止。