UITableViewCell子类 - 如何将一个按钮添加到某些行
问题描述:
我有一个UITableViewCell子类,它有3个标签和大小,并根据文本长度定位标签。选中时,所有行都执行相同的功能。我想要一些行也有一个与它们相关的详细视图。所以我想添加一个UIButton到几行,但我不知道该怎么做。UITableViewCell子类 - 如何将一个按钮添加到某些行
我应该创建一个UITVCell子类的UIButton成员,并且在layoutSubviews中如果按钮不是零,我可以为它腾出空间吗?
cellForRowAtIndexPath会是什么样子?我需要两个重用标识符吗?一个用于按钮,一个用于无按钮?或者只是创建按钮,具有按钮的单元格将自动检测layoutSubviews中的按钮并为其腾出空间?
我找不到任何在线的例子有人这样做,而不使用厦门国际银行的..
编辑 - 因此,我增加了详细披露按钮,如下的建议,我可以检测到我的手机有一个accessoryType,但accessoryView的宽度和高度都是垃圾。我需要的宽度和高度,因为现在的配件是在最前面我行文字,因为我不会在我的layoutSubviews代码占它的..
// CustomTableViewCell.m:
- (void)layoutSubviews {
// I need a width/height here so I can accomodate the accessory button.
if (self.accessoryType != UITableViewCellAccessoryNone) {
NSLog(@"accessory! %f %f",self.accessoryView.frame.size.width, self.accessoryView.frame.size.height);
}
}
答
你不” t需要添加一个UIButton到具有详细信息视图的行 - 只需让他们拥有一个披露按钮(注意:按钮,而不是指示器!)。揭秘按钮,当点击时,通常会显示该单元格的详细视图。
要启用某个小区披露按钮,就在cellForRowAtIndexPath
方法如下:
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
更多细节在这里:
What's the difference between an Detail Disclosure Button and an Disclosure Indicator?
它看起来就像是一个UITableViewCell子类我有一个accessoryView ..也许如果我检查这是不是零,并在layoutSubviews中腾出空间,我甚至可以使用tableView:accessoryButtonTappedForRowWithIndexPath: – Mark 2011-05-13 01:03:14