Iphone 按钮在添加图像视图时创建错误

Iphone 按钮在添加图像视图时创建错误,iphone,ios,xcode,uiimageview,uibutton,Iphone,Ios,Xcode,Uiimageview,Uibutton,每当我点击旋转,它就会产生这个错误并使应用程序崩溃。在我上传图片之前,该应用程序运行良好,旋转效果很好。我知道代码可能会直接告诉我出了什么问题,但我在理解这一点时遇到了问题 下面用粗体表示的是其生成的内容 - (IBAction)spinAction:(id)sender { [_chosenComponents removeAllObjects]; for (int i = 0; i < _componentsInPicker.count; i++) {

每当我点击旋转,它就会产生这个错误并使应用程序崩溃。在我上传图片之前,该应用程序运行良好,旋转效果很好。我知道代码可能会直接告诉我出了什么问题,但我在理解这一点时遇到了问题

下面用粗体表示的是其生成的内容

- (IBAction)spinAction:(id)sender {

    [_chosenComponents removeAllObjects];
    for (int i = 0; i < _componentsInPicker.count; i++) {
        int randNum = arc4random() % [self.theSlotPicker numberOfRowsInComponent:i];

        [_theSlotPicker selectRow:randNum inComponent: i animated:YES];
        [_chosenComponents addObject:
         [NSNumber numberWithInt:[(NSArray *)[_baseList objectAtIndex:i] indexOfObject:[(NSArray *)[_componentsInPicker objectAtIndex:i] objectAtIndex:randNum]]]];
    }
    NSLog(@"%@", _chosenComponents);
-(iAction)spinAction:(id)发送方{
[_chosencomponentsremoveallobjects];
对于(int i=0;i<\u components sinpicker.count;i++){
int randNum=arc4random()%[self.theSlotPicker-numberOfRowsInComponent:i];
[_屏幕选择器selectRow:randNum inComponent:i动画:YES];
[\u chosenComponents addObject:
[NSNumber numberWithInt:[(NSArray*)[[基本列表对象索引:i]索引对象:[(NSArray*)[[选择器对象索引:i]对象索引:randNum]];
}
NSLog(@“%@”,_chosen组件);
按下按钮后吐出/崩溃“线程1:EXC_算术(代码=EXC_1386_DIV,子代码=0x0)”

如果你能指导我如何修复这个错误

谢谢大家!



输出错误:(lldb)

发生此错误可能是因为在使用
arc4random()%

不要使用
arc4random()%n
使用
arc4random\u uniform(n)
。它将返回0到n范围内的数字

然而,这并不能解决


[self.theSlotPicker行数组件:i]
将在某个时间点返回零。

请将应用程序弹出的错误消息发布到xcode的输出窗口。将****放在代码块中不会使其变为粗体。将错误单独放置,以便其他人注意到。好吧,很抱歉更新了。下面没有这种运气。在添加UIImageView之前,它的工作方式类似于charm@user2175105:尝试将[self.theSlotPicker numberOfRowsInComponent:i]记录在循环中。找出它发生在哪个迭代中。还要记录self.theSlotPicker,看看它是否为零?