iOS - 带有自定义单元格的可点击 UITableView

Posted

技术标签:

【中文标题】iOS - 带有自定义单元格的可点击 UITableView【英文标题】:iOS - Clickable UITableView with Custom Cell 【发布时间】:2014-07-30 11:41:11 【问题描述】:

美好的一天!我有一个应用程序,其中包含 UITableView 和自定义单元格。我想要做的是,当我单击特定行时,如果可能,它将根据该行或单元格上的文本执行操作。例如。假设这是一个表格视图。

Flowers      12      Red
Meat         30      Dry
Mouse        10      Alive
Pen          12      Black

然后我点击肉类行,我有一个空白文本框,它将在文本框或标签中显示文本“肉类”。那可能吗?谢谢!

【问题讨论】:

如果您的问题是是否有可能,答案是 通过这个链接***.com/questions/8404922/…,你会找到你的答案 为什么我的 cell.textLabel.text 为空?如何将其更改为我单击的任何行? 【参考方案1】:

可以这样做:

记住要有一个数据源和一个UITableView 的委托,并将您的UITextField 声明为mainTextField 属性。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
    mainTextField.text = cell.textLabel.text;

如果您需要更复杂的结构,您可以为每一行创建UIButtons,并使用带有自定义委托的UITableViewCell 子类,您可以在自定义单元格中捕获事件。

【讨论】:

我会将 mainTextField.text 更改为我自己的 UITextfield 对吗?我试过了,但文本字段没有任何反应 你必须确保方法被调用,cell.textLabel.text 不是 nil 并且你要引用的 textField 存在。就这么简单 我正在尝试将 cell.textLabel.text 更改为我自己的单元格 textlable 用于肉类类别。但它有一个错误,顺便说一下我使用这个方法来填充我所有的单元格文本标签cell.URN.text = [[self.ar objectAtIndex:indexPath.row] objectAtIndex:0]; cell.textLabel.text 为 Null,如何更改? @user3202533 你必须在cellForRowAtIndexPath方法中正确设置。【参考方案2】:

将标签添加到子视图并为单元格放置 Tapgesture,然后在 Tapgesture 目标中,您可以通过基于 Tapgesture 标签的子类化 uitableviewcell 来访问基于标签的视图...

【讨论】:

以上是关于iOS - 带有自定义单元格的可点击 UITableView的主要内容,如果未能解决你的问题,请参考以下文章

带有自定义单元格的 UITableView 在 iOS 6 上画得很好,但在 iOS 7 上完全是白色的

在 UITableView 中处理自定义单元格的点击不会发生

带有自定义表格单元格的 FB Friend Picker View Controller

如何在自定义单元格的 initWithStyle: 方法中获取 UITableView 的宽高?

当按钮是iOS中自定义单元格的子视图时,如何动态更改按钮文本?

带有自定义单元格的 UITableView