Iphone 表视图与';nsrange异常';

Iphone 表视图与';nsrange异常';,iphone,objective-c,Iphone,Objective C,我有一个表格视图,页面顶部有一个搜索栏。当我在表格中滚动,然后按下搜索栏时,当表格仍在滚动时,我会得到一个 *由于未捕获的异常“NSRangeException”而终止应用程序,原因:'*-[NSCFArray objectAtIndex:]:索引(37)超出边界(0)' 我对这里的问题有点迷茫。我认为表视图的委托方法在调用搜索栏委托方法之前不会完全执行 任何帮助都将不胜感激 谢谢。您正在使用线程吗 搜索栏和表视图委托方法都应该在主线程上,因此,一个方法无法中断另一个方法 但是,可以在滚动期间处

我有一个表格视图,页面顶部有一个搜索栏。当我在表格中滚动,然后按下搜索栏时,当表格仍在滚动时,我会得到一个

*由于未捕获的异常“NSRangeException”而终止应用程序,原因:'*-[NSCFArray objectAtIndex:]:索引(37)超出边界(0)'

我对这里的问题有点迷茫。我认为表视图的委托方法在调用搜索栏委托方法之前不会完全执行

任何帮助都将不胜感激

谢谢。

您正在使用线程吗

搜索栏和表视图委托方法都应该在主线程上,因此,一个方法无法中断另一个方法

但是,可以在滚动期间处理事件。如果您的搜索在滚动期间清除了表视图,这可能是一个问题。

您使用的是线程吗

搜索栏和表视图委托方法都应该在主线程上,因此,一个方法无法中断另一个方法


但是,可以在滚动期间处理事件。如果您的搜索在滚动期间清除了表视图,这可能是一个问题。

-(void)searchBarTextDidBeginEditing:(UISearchBar*)searchBar{sBar.showcancelButton=YES;//在编辑模式sBar.autocorrectionType=UITextAutocorrectionTypeNo;[self.tableData removeAllObjects];//刷新以前的搜索内容}您的权利当按下搜索栏时,我正在清除表视图。我注释掉了我正在清除表的行,它解决了问题。非常感谢您向我指出这一点。谢谢:)我尝试过,但它告诉我必须等待2分钟。我现在已检查完毕。谢谢,我还鼓励您对该行为提出错误;除非您大量定制表视图,否则它应该对被删除的数据具有鲁棒性(假设所有事情都发生在主线程中)。-(void)searchbartextdibeginediting:(UISearchBar*)searchBar{sBar.showsCancelButton=YES;//在编辑模式下仅显示状态栏的“取消”按钮sBar.autocorrectionType=UITextAutocorrectionTypeNo;[self.tableData removeAllObjects];//刷新以前的搜索内容}您的权利当按下搜索栏时,我正在清除表视图。我注释掉了我正在清除表的行,它解决了问题。非常感谢您向我指出这一点。谢谢:)我尝试过,但它告诉我必须等待2分钟。我现在已检查完毕。谢谢,我还鼓励您对该行为提出错误;除非您大量定制表视图,否则它应该对删除的数据具有健壮性(假设所有事情都发生在主线程中)。