我正在使用此代码将UIActivityIndicatorView插入我的工具栏
-(void)addActivityIndicatorToToolbar {
UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)];
activityIndicator.userInteractionEnabled = YES;
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhite;
[activityIndicator startAnimating];
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator];
barButton.target = self;
barButton.action = @selector(playButtonPressed:);
NSMutableArray *toolbarItemsMutable = [self.toolbar.items mutableCopy];
[toolbarItemsMutable replaceObjectAtIndex:0 withObject:barButton];
self.toolbar.items = toolbarItemsMutable;
}
然而,当我点击UIActivityIndicatorView时,不执行动作(playButtonPressed)。
我该如何纠正?
答案 0 :(得分:1)
您似乎更有可能想要一个带有活动指示器的按钮。您可以通过创建this post中所述的自定义视图按钮来完成此操作。然后您可以正常设置此按钮的操作,并且您可能希望保留对活动指示器的引用以启动和停止它。
答案 1 :(得分:0)
我最终通过使用gestureRecognizer在activityIndicatorView上添加了一个额外的视图来实现一个穷人的解决方案。
答案 2 :(得分:0)
这是一个非常古老的问题,但为什么不直接向UITapGestureRecognizer
实例添加UIActivityIndicatorView
实例? (在iOS 8.2上工作正常,我之前的版本没有测试过。)