我在xib文件中有一个非常简单的tableview,它的委托和数据源已连接到TestVC。 TestVC很简单:

#import "TestVC.h"

@implementation TestVC

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

    static NSString *IDEN = @"IDEN";
    UITableViewCell *cell = [_tableView dequeueReusableCellWithIdentifier:IDEN];
    if (!cell) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:IDEN];
    }

    cell.textLabel.text = @"test";
    return cell;

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 10;

}

- (void)tableView:(UITableView *)_tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath {
    NSLog(@"called");
    [_tableView deselectRowAtIndexPath:indexPath animated:YES];
}

@end


当我单击一个单元格时,它不会被取消选择。我什至在其中放置了一条日志语句,以查看是否正在调用didDeselectRowAtIndexPath方法。

我究竟做错了什么?

最佳答案

您使用的方法错误
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

是你需要的那个

09-17 04:05