当选择或突出显示tableviewcell时,我们发现它的背景颜色已更改(例如,更改为蓝色)。我想知道在这个过程中调用了多少个方法以及使用什么方法。希望你的回答!
此外,我想深入了解一些方法,例如,调用哪种方法并更改背景颜色。
答案 0 :(得分:1)
调用这些方法,如果要根据需要覆盖它,则必须覆盖这些方法。
- (void)setHighlighted: (BOOL)highlighted animated: (BOOL)animated
{
// don't highlight
}
- (void)setSelected: (BOOL)selected animated: (BOOL)animated
{
// don't select
//[super setSelected:selected animated:animated];
}
答案 1 :(得分:0)
这些是UITableViewCell
录制事件调用的方法:
- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated
{
// do something
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
// do something
}
访问Apple文档,在UITableViewCell
此外,您可以通过以下方式获得更多控件:
- (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath
{
// do something
}
- (void) tableView: (UITableView *) tableView accessoryButtonTappedForRowWithIndexPath: (NSIndexPath *) indexPath
{
// do something
}
答案 2 :(得分:0)
查看Table View类,我发现了这个顺序:
tableView:shouldHighlightRowAtIndexPath:
tableView:didHighlightRowAtIndexPath:
tableView:willSelectRowAtIndexPath:
tableView:didSelectRowAtIndexPath:
如果打开UITableView头文件,可以了解更多信息。