有关选择UITableViewCell字段的问题

时间:2010-12-30 04:33:12

标签: iphone uitableview

我有一个像这样的自定义UITableViewCell:

+--------------------------+
| username                 |
|                          |
|      --- <image> --      |
|                          |
|                <like it> |
+--------------------------+

它会显示一个用户名,一个图像和一个“喜欢它”的按钮来表示图像。 我不希望整个单元格是可选择的,我希望用户可以点击“用户名”来查看显示用户名信息的新视图。对于图像来说,当用户点击图像时,他可以在新视图中看到图像。

现在我只能选择我的整个细胞。我该如何实现这样的东西?

感谢。

当您点击用户名时,您会看到用户信息的视图。整个单元格不可选。 alt text

3 个答案:

答案 0 :(得分:1)

1)您将cell selectionstyle保持为none,不在didSelectRowAtIndexPath方法中实现任何内容。
2)使用三个单独的按钮来表示名称,图像等(因为您可以通过单击按钮获取事件)。并且在已注册的按钮方法中导航到其对应的视图。

答案 1 :(得分:0)

-(void)buttonClicked:(id)sender{  
 UIButton *currentButton = (UIButton*)sender;
 if(currentButton==imageButton)
 {
      //navigate to image detail;
 {
 else if(currentButton==nameButton)
 {
     //navigate to user detail;
  }
  else if(currentButton==likeButton)
{
     //implement code for like button;
}
}

答案 2 :(得分:0)

以一种使用setEntry:(MyEntryType*)entry之类的方法填充内容的方式编写您的单元格类,以便它能记住该条目。还为它提供自定义协议的委托属性。单元格将其中每个按钮的目标设置为自身,例如[nameButton addTarget:self selector:@selector(namePressed:)...][likeButton addTarget:self selector:@selector(likePressed:)...]。因此,如果用户按下例如类似按钮,则相应的单元被通知并用[delegate entryLiked:theCellEntry]调用其委托。我希望你明白这一点。