首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >管理多个UIActivityIndicatorView

管理多个UIActivityIndicatorView
EN

Stack Overflow用户
提问于 2012-08-01 19:14:38
回答 2查看 536关注 0票数 0

我已经定义了IBOutletCollection of UIActivityIndicatorView。

代码语言:javascript
复制
IBOutletCollection(UIActivityIndicatorView) NSArray *ticker;

在接口生成器中建立所需的连接后,我运行以下代码。

代码语言:javascript
复制
for (UIActivityIndicatorView *obj in ticker)
 {
            [obj startAnimating];
 }

但我在控制台上收到一条消息:

*由于“NSInvalidArgumentException”异常终止应用程序,原因:'-UIActivityIndicatorView countByEnumeratingWithState:objects:count::unrecognized发送到实例0x2c86a0‘

我知道这可能是一个很小的问题,但真的不明白。

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-01 19:31:17

我不知道什么不适合你。我做了以下工作,效果很好。

在我的.h里

代码语言:javascript
复制
@property (strong, nonatomic)IBOutletCollection(UIActivityIndicatorView) NSArray *activityIndicators;

在我的.m中(如果不使用Xcode 4.4)

代码语言:javascript
复制
@synthesize activityIndicators

我将7+活动指示器添加到我的StoryBoard中,并将它们连接到我的viewController

在我的viewDidLoad里我要打电话

代码语言:javascript
复制
for (UIActivityIndicatorView *obj in self.activityIndicators){
        [obj startAnimating];
    }

在这个配置中,我工作得很好,没有问题。

根据你收到的错误信息

代码语言:javascript
复制
'NSInvalidArgumentException', reason: '-[UIActivityIndicatorView countByEnumeratingWithState:objects:count:]

听起来有点不对劲,检查你的IB,看看你有没有做过奇怪的事情。

票数 1
EN

Stack Overflow用户

发布于 2012-08-01 19:20:27

countByEnumeratingWithState:objects:count:方法应该作为NSFastEnumeration协议的一部分发送到数组对象。有时,如果存在内存问题,消息可能会被发送到错误的对象。反复检查以确保ticker被正确保留(使用self.ticker也可能是最佳实践)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11765970

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档