iOS6中的字符串和UITableViewCells

时间:2012-10-22 21:40:09

标签: uitableview nsstring ios6

我正在将应用从iOS5迁移到iOS6。在应用程序的一个部分中,用户从屏幕底部的uitabbarviewcontroller中选择一个选项卡,然后将它们带到uitableview。当用户选择选项卡时,代码调用Web服务并列出附加到与CoreData一起存储并保留在设备本身上的数据的最新信息。

无论如何,当我在cellForRowAtIndexPath时,我从Web服务响应中构造一个字符串,并将单元格的detailTextLabel上的text属性设置为该字符串的值。

这从未在iOS5中造成问题。现在,当我尝试在cellForRowAtIndexPath方法中使用此字符串时,编译器似乎认为我的字符串实际上是NSIndexPath个变量。

例如,如果我尝试检查字符串的长度,应用程序崩溃,给我留言:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSIndexPath length]: unrecognized selector sent to class 0x396cae64'

同样地,对于我想要用该方法中的字符串做的任何其他事情。

其他一些事情:

  1. 它发生在模拟器和设备上。
  2. 它与字符串本身无关;也就是说,它仍然可以在仍安装iOS5的设备上运行良好。另外,我可以将detailTextLabel.text设置为我用来设置字符串的值;我只是不能明确地使用字符串。
  3. 还有其他人遇到过这个吗?如果是这样,你的解决方案是什么?我用Google搜索,没有看到任何东西。

1 个答案:

答案 0 :(得分:0)

尝试复制该字符串,然后使用它。

首先复制该字符串,如

NSString * strTemp = [[NSString stringwithformat:@“%@”,yourstring] copy];

现在尝试在你想使用的地方使用strTemp。