同样是删除cell问题,帮我看看问题出现在哪,谢谢!

我的类文件myFile是继承UIViewController的(目的是为了能够在一个view里切换不同的tableView),在myFile.h中定义一个可变数组editContactsList,然而在IB里面添加了一个view,两个tableView,在下面方法里面报错(有注明具体位置)

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath*)indexPath {

if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the row from the data source.
NSUInteger row = [indexPath row];
[tableView beginUpdates];
NSLog(@"%@",self.editContactsList);//打印到数组内容

[self.editContactsList removeObjectAtIndex:row];//此处报错,错误信息在下面
        [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[tableView endUpdates];
[tableView reloadData];
    } 
}
错误信息:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI removeObjectAtIndex:]: unrecognized selector sent to instance 0x5e88f90'
*** Call stack at first throw:
(
0   CoreFoundation                      0x0214ebe9 __exceptionPreprocess + 185
1   libobjc.A.dylib                     0x022a35c2 objc_exception_throw + 47
2   CoreFoundation                      0x021506fb -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3   CoreFoundation                      0x020c0366 ___forwarding___ + 966
4   CoreFoundation                      0x020bff22 _CF_forwarding_prep_0 + 50
5   Etisalat                            0x0014cb39 -[GMViewController tableView:commitEditingStyle:forRowAtIndexPath:] + 211
6   UIKit                               0x014232ea -[UITableView(UITableViewInternal) animateDeletionOfRowWithCell:] + 101
7   UIKit                               0x013b9a6e -[UIApplication sendAction:to:from:forEvent:] + 119
8   UIKit                               0x014481b5 -[UIControl sendAction:to:forEvent:] + 67
9   UIKit                               0x0144a647 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 527
10  UIKit                               0x014491f4 -[UIControl touchesEnded:withEvent:] + 458
11  UIKit                               0x013de0d1 -[UIWindow _sendTouchesForEvent:] + 567
12  UIKit                               0x013bf37a -[UIApplication sendEvent:] + 447
13  UIKit                               0x013c4732 _UIApplicationHandleEvent + 7576
14  GraphicsServices                    0x0328ba36 PurpleEventCallback + 1550
15  CoreFoundation                      0x02130064 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52
16  CoreFoundation                      0x020906f7 __CFRunLoopDoSource1 + 215
17  CoreFoundation                      0x0208d983 __CFRunLoopRun + 979
18  CoreFoundation                      0x0208d240 CFRunLoopRunSpecific + 208
19  CoreFoundation                      0x0208d161 CFRunLoopRunInMode + 97
20  GraphicsServices                    0x0328a268 GSEventRunModal + 217
21  GraphicsServices                    0x0328a32d GSEventRun + 115
22  UIKit                               0x013c842e UIApplicationMain + 1160
23  **(这里代表工程名)                   0x0013c914 main + 114
24  **(这里代表工程名)                   0x00004081 start + 53
)
terminate called after throwing an instance of 'NSException'
Program received signal:  “SIGABRT”.
(gdb) 


麻烦各位大侠帮忙看看,指点指点,本人菜鸟,被它搞到头大了,谢谢

引用第1楼coco89718于2011-07-19 11:00发表的  :
你用的是NSArray吗,要用NSMutableArray。
如果头文件定义的editContactsList是NSMutableArray类型,那在初始化的时候是不是
self.editContactsList = [[NSArray alloc] init]把他初始化成了NSArray呢 

谢谢!确实是这个原因。
我在viewDidLoad里面这样为editContactsList赋值:
NSMutableArray *arr  =[ [NSArray alloc] initWithObjects:@"a",@"b",@"c",nil];
self. editContactsList = arr;
[arr release];
就会出现上面的错误,后来改成了下面的方法就通过了:
NSArray *arr = [[NSArray alloc]initWithObjects:@"a",@"b",@"c",nil];
[NSMutableArray arrayWithCapacity:10];
[editContactsList setArray:arr];
[arr release];

转:http://www.cocoachina.com/bbs/simple/?t67161.html

__NSArrayI removeObjectAtIndex:]: unrecognized selector sent to instance的更多相关文章

  1. -[__NSArrayI removeAllObjects]: unrecognized selector sent to instance 0x7fa8dc830110

    问题 今天做项目,遇到了这个问题 -[__NSArrayI removeAllObjects]: unrecognized selector sent to instance 0x7fa8dc8301 ...

  2. iOS 程序报错:reason: [NSArrayI addObject:]: unrecognized selector sent to instance

    *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI ad ...

  3. '-[__NSCFString stringFromMD5]: unrecognized selector sent to instance 0x14d89a50'

    类型:ios 问题描述: 导入百度地图 然后在模拟器运行可以,真机测试不行: 报错: '-[__NSCFString stringFromMD5]: unrecognized selector sen ...

  4. unrecognized selector sent to instance

    今天长一见识(特此感谢小星星老湿-坏笑),凡是遇到“unrecognized selector sent to instance *******”的都是******方法没有,比如这种的错误: 可以尝试 ...

  5. IOS 错误 [UIWebView cut:]: unrecognized selector sent to instance

    那在什么场景中会出现这种情况呢? 如果一个包含文字的输入元素有焦点,然后按钮的点击会导致输入失去焦点,然后接下来在输入时双按会重新得到焦点并从弹出bar中选择剪切复制粘贴,就会导致此error. 也就 ...

  6. -[__NSCFNumber length]: unrecognized selector sent to instance 0xb0000000000000e3

    网络数据解析出现-[__NSCFNumber length]: unrecognized selector sent to instance 0xb0000000000000e3这样的错误,具体 re ...

  7. CBUUID UUIDString unrecognized selector sent to instance 错误

    CBUUID UUIDString unrecognized selector sent to instance 错误 ios7.0,4s 蓝牙出现上述错误! 查看api可知,错误原因,由于CBUUI ...

  8. reason: -[UIKBBlurredKeyView candidateList]: unrecognized selector sent to instance

    reason: -[UIKBBlurredKeyView candidateList]: unrecognized selector sent to instance 发现上线的app一直会有这个cr ...

  9. 利用objc的runtime来定位次线程中unrecognized selector sent to instance的问题

    昨天遇到一个仅仅有一行错误信息的问题: -[NSNull objectForKey:]: unrecognized selector sent to instance 0x537e068 因为这个问题 ...

随机推荐

  1. centos7 部署 open-falcon 0.2.0

    =============================================== 2019/4/29_第3次修改                       ccb_warlock 更新 ...

  2. google closure 笔记-SOY template

    一 使用js模板 closure template 目前支持Java和js.但是模板语法的设计不依赖于任何现成的语言,所以理论上可以支持任何语言,只是暂时只有java编译器. 使用js模板:编写模板文 ...

  3. Heist

    CF#509 div2 A 第一次用自己的号打CF祭. 题目描述 昨晚有一家电子商店被抢劫了. 昨天在商店里的所有键盘都是从x开始按升序编号的.例如,如果x=4,并且商店中有3个键盘,那么编号就为4, ...

  4. go make切片中len() 和 cap() 的差别

    对于make slice而言,有两个概念需要搞清楚:长度跟容量. 容量表示底层数组的大小,长度是你可以使用的大小. 容量的用处在哪?在与当你用 appen d扩展长度时,如果新的长度小于容量,不会更换 ...

  5. Centos7下yum安装zabbix-server的部署(一)

    一.环境准备 OS:CentOS 7.2 64bit Zabbix版本:3.0.12 MySQL版本:5.6 hostname ip 主机用途zabbix-server 10.0.0.44 服务端 z ...

  6. c run-time library 和 standard c++ library

    参考: c run-time libraries:  http://msdn.microsoft.com/zh-cn/library/vstudio/abx4dbyh(v=vs.100).aspx H ...

  7. prometheus如何使用blackbox-exporter来获取k8s的网络性能

    如果学会了如何抓取app的metrics,则blackbox-exporter抓取网络性能套路是相同的. 一,在blackbox-exporter的blackbox.yml里配置好抓取模块,常见的是h ...

  8. 为什么因式分解n=pq分别得到pq是求解密钥中d的关键

    从d的来源来说,它是这样来的: "找到一个数d,使得ed-1能够被z整除.即给定e,选择数d,使得ed被z除的余数为1",即  ed=1 (mod z) 上面这句话中,为了求d,我 ...

  9. Sublime Text 中open in browser /view in browser 无反应

    问题 早上用Sublime Text写html的时候,发现右键的open in browser或view in browser命令都突然无法使用了,无法像以前一样在浏览器打开编写的页面了. 开始以为是 ...

  10. 那些年我们踩过的坑之表单reset

    开发者往往是在一个又一个的坑中成长起来的,自学的开发者尤其如此,刚刚填完一个坑,转身又掉进另一个坑.有些坑很容易就跳出来了,也有些坑能整了一天都没头绪,第二天早上一来发现后面就有一架通往坑外的梯子,坑 ...