didSelectRowAtIndexPath没有被调用

时间:2013-11-11 05:21:16

标签: ios uitableview

当我点击一个单元格时,didSelectRowAtIndexPath没有被调用。当我按住一个单元格时,它会突出显示单元格,但是一旦我将手指移开,高光将消失。当我用两根手指敲击时 - 一根手指放在一个牢房上,一根手指放在另一根牢房上 - 然后didSelectRowAtIndexPath最终被召唤,一个牢房仍然突出显示。

我删除了所有自定义表格视图单元格代码,并将其转换为具有库存UITableViewCell的完全通用表格。仍然是同样的问题。

是,已设置数据源和委托。不,没有任何奇怪的委托方法调用deselectRowAtIndexPath

这是表格视图的代码。

self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 75.0f, self.view.frame.size.width, self.view.frame.size.height - 75.0f) style:UITableViewStylePlain];
[self.view addSubview:self.tableView];

self.tableView.dataSource = self;
self.tableView.delegate = self;
self.tableView.indicatorStyle = UIScrollViewIndicatorStyleWhite;
self.tableView.allowsSelection = YES;
self.tableView.separatorColor = [UIColor clearColor];
self.tableView.backgroundColor = _backgroundColor;

这是我将单元格剥离的代码。

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

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

cell.textLabel.text = @"Hello!";

return cell;

我已经完成了所有didSelectRowAtIndexPath讨论,并尝试了所有推荐的解决方案。而且我找不到任何人提到我在这里看到的问题,其中didSelectRowAtIndexPath被调用,它只是间歇性的,或者你必须同时使用两个手指。

1 个答案:

答案 0 :(得分:0)

确保方法

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    }

在.h

中的视图控制器中
@interface YourViewController : UIViewController<UITableViewDelegate>
相关问题