ios - 将 UITableView 添加为 subview 时,didSelectRowAtIndexPath 不会触发单元格

标签 ios objective-c uitableview

我有一个常规的 UIViewController,我在 viewDidLoad 中添加了一个 UITableView,如下所示:

dataTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 250, 320, 318)];
dataTableView.dataSource = self;

[self.view addSubview:dataTableView];

工作正常,单元格内容在那里,我通过调用 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath。我可以滚动和一切,但我无法让单元格对触摸/点击使用react。当我按下一个单元格时,它保持选中状态,但我似乎无法对其附加操作.我使用的代码是

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    NSLog(@"select");
}

但它永远不会触发。我是否必须在 tableview 和调用之间建立某种连接?如果是这样,为什么它可以毫无问题地用于 cellForRowAtIndexPath ?任何帮助表示赞赏。我敢肯定,对于了解“Objective-C”的人来说,这很容易修复

最佳答案

您没有将自己设置为 dataTableView 的委托(delegate)。

dataTableView.delegate = self;

cellForRowAtIndexPath 起作用的原因是因为它是 dataSource 的一部分,而 didSelectRowAtIndexPathdelegate 的一部分.

关于ios - 将 UITableView 添加为 subview 时,didSelectRowAtIndexPath 不会触发单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23615283/

相关文章:

android - iOS 是否具有与 Android 一样的应用内更新功能?

ios - 横向/所有方向的 MPMoviePlayerViewController

ios - 以编程方式使用按钮更改应用程序语言

ios - 如何将下拉菜单添加到 iOS 中的导航栏标题

iOS 如何在 tableView 中找到侧滚动条的屏幕位置

ios - 如何使用 metadataOutputRectOfInterestForRect 方法和 rectOfInterest 属性扫描特定区域? (二维码)

objective-c - 将 Objective-C 指针类型 'NSString *' 转换为 C 指针类型 'CFStringRef' (又名 'const struct __CFString *' )需要桥接转换

iphone - 如何像 iphone 照片库在 iOS 上那样在网格中显示图像

ios - UITableViewCell横向自定义滑动删除效果

ios - 如何使用自动布局设置 tableHeaderView (UITableView) 的高度?