【发布时间】:2014-01-13 17:05:05
【问题描述】:
在我的应用程序中,我设置了一个 NSArray,并将文档目录中带有 HTML 扩展名的所有对象添加到其中。
然后我使用这个数组来填充UITableView 但是......我不断收到警告
'NSArray' 可能不会响应'removeObjectAtIndex:'
如果我将其更改为 NSMutableArray,则该警告会消失,但会在此处弹出一个新警告:
self.files = [[[manager contentsOfDirectoryAtPath:documentsDirectoryPath
error:nil]
pathsMatchingExtensions:[NSArray arrayWithObjects:@"html", nil]] retain];
那个警告是:
不兼容的指针类型从 'NSArray *' 分配给 'NSMutableArray *'
该应用运行良好,因为尽管存在removeObjectAtIndex: 问题,但编辑表格视图永远不会产生任何问题。
【问题讨论】:
-
将长语句分成单独的行,这样更容易发现错误。您会立即看到
[[manager contentsOfDirectoryAtPath:documentsDirectoryPath error:nil]返回一个NSArray而不是 NSMutableArray。 OPr 在指出错误的那条线上出现错误。将操作组合在一条线上是没有回报的。
标签: ios nsmutablearray nsarray