UITableViewCell中的特殊自定义复选标记

时间:2012-07-02 09:16:00

标签: iphone objective-c ios xcode uitableview

根据我的理解,点击/取消暂停行时会显示UITableViewCellAccessoryTypeCheckmark

但是,我想制作一个始终可见的配件。像Checkbox或类似的东西。这是因为我想在选择行时显示其他信息,但如果点击该行右端的Checkbox,则应在其中显示勾号。

很抱歉,如果我不是很清楚。请问我有任何澄清。

谢谢!

4 个答案:

答案 0 :(得分:1)

您必须创建自定义配件视图。在该视图中,您添加了两个UIImageView,并为复选框提供了标记。

在创建时:

#define CHECKBOX_TAG 123

UIView *customAccessoryView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 60, 30)] autorelease];
UIImageView *otherInfo = [[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)] autorelease];
UIImageView *checkbox = [[[UIImageView alloc] initWithFrame:CGRectMake(30, 0, 30, 30)] autorelease];
checkbox.tag = CHECKBOX_TAG;
[customAccessoryView addSubview:otherInfo];
[customAccessoryView addSubview:checkbox];
cell.accessoryView = customAccessoryView;

在显示屏上,如果选中,则将隐藏的复选框设置为NO:

UIImageView *checkbox = [cell.accessoryView viewWithTag:CHECKBOX_TAG];
if(selected){
    checkbox.hidden = NO;
}else{
    checkbox.hidden = YES;
}

答案 1 :(得分:0)

如果您希望使用UIKit的{​​{1}} accessoryType属性。

UITableViewCell

如果您真的想要自定义,请使用@property(nonatomic) UITableViewCellAccessoryType accessoryType

accessoryView

答案 2 :(得分:0)

您可以使用button来实现此目的。使用未选中的复选框图像在单元格中创建一个按钮,当用户单击此按钮时,更改按钮的图像以进行检查。

答案 3 :(得分:0)

创建一个按钮并将其添加到 acceessoryView:并像复选框一样使用它... 这将解决您的问题