按钮标签中的例外情况

时间:2014-01-06 06:57:36

标签: ios iphone objective-c nsmutablearray

我已经为按钮设置了标签但是在这种方法中我得到了一个例外,我不知道为什么

- (IBAction)showComments:(UIButton *)sender
{   
     int tag=[sender tag];
     NSLog(@"The tag clicked:%@",[blogids objectAtIndex:tag]);
}

blogid是我的NSMutableArray

由于

4 个答案:

答案 0 :(得分:1)

您正在获取NSRangeException,这意味着您正在尝试检索不存在的数组元素。我建议你应该检查你正在尝试检索的Tag值的数组计数。

NSLog(@"%d",[blogids count]);
NSLog(@"%@",tag);

我确定标签值大于计数。如果您想使用标记从数组中检索值,则不应该这样。

谢谢,

答案 1 :(得分:0)

您的blogids数组是空白的。请检查按钮标记

中的索引中是否有对象

答案 2 :(得分:0)

您获得例外的原因是因为您的标记大于博客计数。

将按钮添加到数组中,然后它不会崩溃。

例如:

blogids = [[NSMutableArray alloc]init];
[blogids addObject:oneOfYourButtons];

此外,如果您只想查看标签编号,请使用此选项:

NSLog(@"The tag clicked:%d",tag);

而不是:

NSLog(@"The tag clicked:%@",[blogids objectAtIndex:tag]);

答案 3 :(得分:0)

此处blogids为空数组。这样,它显示为[0 .. 0]的边界(即数组计数为零)。只需检查阵列初始化。