应用程序在UItableCellSection上长按崩溃

时间:2014-12-23 14:24:31

标签: ios objective-c uitableview

-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    static NSString *simpleTableIdentifier = @"cell";

    simpleCell = [self.dashboardListView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

    if (simpleCell == nil) {

        simpleCell = [[SimpleTableCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
        simpleCell.selectionStyle = UITableViewCellSelectionStyleNone;

    }

    ///tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(sectionTapped)];
    ///[simpleCell.contentView addGestureRecognizer:tap];

    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    [button setFrame:simpleCell.frame];
    [button addTarget:self action:@selector(sectionTapped) forControlEvents:UIControlEventTouchUpInside];
    [button setBackgroundColor:[UIColor clearColor]];
    [simpleCell.contentView addSubview:button];

    NSDictionary *dict = [cellnames objectAtIndex:section];

    simpleCell.cellName.text = (NSString *)[dict valueForKey:@"cellname"];
    simpleCell.count.text = [[countArray objectAtIndex:section]stringValue];


    return simpleCell;

}

以上代码工作正常。

问题是: - 当我长按tableView上的simpleCell时崩溃。

我收到崩溃日志

  

*** - [SimpleTableCell hash]:发送到解除分配的实例0x7f86dc0b2420`的消息

任何建议都受到高度赞赏。

谢谢,

2 个答案:

答案 0 :(得分:2)

您可能想尝试

cell.contentView.userInteractionEnabled = NO; 有同样的问题。为我解决了禁用userInteraction。

答案 1 :(得分:0)

我有同样的问题,我使用UIView * objView代替使用CustomTableCell来解决它。

试试这会有所帮助。