同样是删除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. 洛谷P1886 滑动窗口

    传送门啦 以最大值为例,既然我们想要保证队列开头为答案,那么我们就要保证每次更新使最大值一直放在队列.那么如果存储的最大值该弹出了怎么办呢?我们只需要记录下每个元素的位置,判断是否在区间内即可. 队头 ...

  2. TcxGrid 调整列位置的事件

  3. java 异常与记录日志

    一. 你可能还想利用java.util.logging工具将输出记录到日志中 package exceptions; //: exceptions/LoggingExceptions.java // ...

  4. Learning coding online

    A lot of online courses for coding skills are available nowadays, both free and non-free. I will col ...

  5. SSL证书链说明

    SSL证书链说明 1. SSL证书链定义 证书颁发机构(CA)共分为两种类型:根CA和中间CA.为了使SSL证书被信任,该证书必须由设备所连接的可信存储库CA颁发. 如果该证书不是由受信任CA,该链接 ...

  6. HDU4632 Poj2955 括号匹配 整数划分 P1880 [NOI1995]石子合并 区间DP总结

    题意:给定一个字符串 输出回文子序列的个数    一个字符也算一个回文 很明显的区间dp  就是要往区间小的压缩! #include<bits/stdc++.h> using namesp ...

  7. 关于 win10 创建WiFi热点 问题(无法启动承载网络 , 我们无法设置移动热点,因为你的电脑未建立以太网,wifi或手机网络数据连接 )

    电脑创建WiFi,一般三种办法: 1. WiFi共享软件:猎豹wifi.wifi共享精灵.wifi共享大师..... 2. 命令提示符 netsh wlan set hostednetwork mod ...

  8. 005.iSCSI客户端配置示例-Windows

    一 环境 Linux作为iSCSI服务端,Windows2008R2作为iSCSI客户端 二 服务端配置过程 2.1 客户端配置 在Linux上参照之前的配置建立三个LUN卷作为共享盘,最终配置如下: ...

  9. SpringBoot详细研究-04部署测试与监控

    这部分的内容实际就是devops的主要工作内容,当然一名合格的程序要也需要掌握这部分的知识. 热部署 简单来说,在开发时,修改了任何的代码,IDE将自动编译运行及发布:在发布时,当前发布不影响线上服务 ...

  10. java过滤器、监听器、拦截器机制

    一.过滤器 Filter也称之为过滤器,它是Servlet技术中最实用的技术,Web开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 ...