我正在尝试实现一个TableView,其中每个单元格都有一个“+
”按钮,就像将iPod添加到播放列表中的iPod应用程序一样。
cell.accesoryType
只有四个值
UITableViewCellAccessoryCheckmark
UITableViewCellAccessoryDetailDisclosureButton
UITableViewCellAccessoryDisclosureIndicator
和
None
如何做到这一点?我是否需要创建自定义按钮并设置cell.accessoryView
或者还有其他方法可以执行此操作吗?
答案 0 :(得分:13)
Teo的解决方案效果很好,但它没有作为答案发布,所以我重新发布它:
UIButton *button = [UIButton buttonWithType:UIButtonTypeContactAdd];
[button addTarget:self action:@selector(addbuttonTapped) forControlEvents:UIControlEventTouchUpInside];
cell.accessoryView = button;
答案 1 :(得分:3)
JosephH的简单变体,用于记忆。
如果您只是想要一个装饰性的“+”按钮并继续使用原始的didSelectRowAtIndexPath触发器,请使用:
UIButton *button = [UIButton buttonWithType:UIButtonTypeContactAdd];
[button setUserInteractionEnabled:NO];
cell.accessoryView = button;
通过禁用按钮上的用户交互,它将在底层视图上传播压力事件:单元格。
答案 2 :(得分:0)
如果您要创建custom cell
,请在右上角放置button
,就像accessory type
出现的地方一样,并将“+”图像分配给按钮,这样你也可以“看到图像”并获得“按钮动作事件”。
请参阅this教程了解自定义uitableviewcells。
答案 3 :(得分:0)