为AccessoryType TableView添加“加号”按钮

时间:2011-06-11 08:34:27

标签: iphone uitableview accessorytype

我正在尝试实现一个TableView,其中每个单元格都有一个“+”按钮,就像将iPod添加到播放列表中的iPod应用程序一样。

cell.accesoryType只有四个值

UITableViewCellAccessoryCheckmark

UITableViewCellAccessoryDetailDisclosureButton

UITableViewCellAccessoryDisclosureIndicator

None

如何做到这一点?我是否需要创建自定义按钮并设置cell.accessoryView或者还有其他方法可以执行此操作吗?

4 个答案:

答案 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)