0

如果我有一个像“ Help, Support and More”这样的字符串,NSArray它是它的内容,UITableView它在启动时崩溃。如果我在“”之后删除空格,,则没有问题。

有什么解决办法吗?

崩溃了

cell.textLabel.text = @"Help, Support and More";

有效

cell.textLabel.text = @"Help,Support and More";

这是更多代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
        //cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    }

    // Configure the cell.
    NSLog(@"%@", [[sportstypes objectAtIndex: [indexPath row]] title]);
    cell.textLabel.text = @"Tes t:, ,,,,,";
    //cell.textLabel.text = @"Blubber";

    return cell;
}

修复:Xcode 4.6.2 应用程序在每秒钟运行一次时崩溃 感谢 ice_2

4

3 回答 3

0

我认为你做错了什么。因为您的代码是正确的,所以您的代码没有问题,第二件事您可以将任何特殊字符放在双引号""中。它不会产生任何问题。

于 2013-06-06T09:45:44.013 回答
0

这可能是由于内存问题。确保数组没有在任何地方释放或删除。启用僵尸并运行它,以便您可以在调试器控制台中收到一些日志

问题可能在这一行

NSLog(@"%@", [[sportstypes objectAtIndex: [indexPath row]] title]);

评论它并执行,看看会发生什么

于 2013-06-06T10:00:11.747 回答
0

如果您收到错误 Thread 1: signal SIGABRT on every second launch。请打开菜单 Product -> Scheme -> Edit Scheme,选择左侧的 Run YouAppName.app,选项卡 Info。然后在调试器字段中选择 GDB 而不是 LLDB。

似乎是 OS X 10.8.4 和 LLDB 的组合。正如 kenster 所说,切换到 GDB 可以解决问题。

于 2013-06-06T10:04:35.107 回答