1

每当我调用下面的代码时,

BOOL currentState = [[allGroupThreeArray objectAtIndex:indexNumber] getState];

我得到以下控制台错误:

-[UIImageView objectAtIndex:]:无法识别的选择器发送到实例 0x1f574d50

由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[UIImageView objectAtIndex:]: unrecognized selector sent to instance 0x1f574d50”

我不知道为什么它说“UIImageView objectAtIndex”,因为 allGroupThreeArray 是一个 NSArray,它由下面的代码在 @implementation 之上定义

static NSArray *selectedGroupThreeArray;

selectedGroupThreeArray 是我的类“ItemInstance”的实例数组,“getState”是该类中返回布尔值的公共方法。

我花了几个小时在这上面,完全不知道问题是什么。任何帮助是极大的赞赏!

编辑: indexNumber 由下面的代码定义

int indexNumber = itemNumber-300-1;

其中 itemNumber 是一个参数,它被发送到所有这些发生的方法。

4

1 回答 1

2

像这样的错误通常是内存问题的迹象。您的数组可能已释放,但nil在您尝试调用之前未设置为objectAtIndex:.

于 2012-06-04T00:13:14.437 回答