当一个 tableviewcell 被选中或突出显示时,我们发现它的背景颜色发生了变化(例如,变为蓝色)。我想知道在这个过程中调用了多少个方法,什么方法。希望得到您的答复!
此外,我想深入了解一些方法,例如,调用了哪个方法并更改了背景颜色。
当一个 tableviewcell 被选中或突出显示时,我们发现它的背景颜色发生了变化(例如,变为蓝色)。我想知道在这个过程中调用了多少个方法,什么方法。希望得到您的答复!
此外,我想深入了解一些方法,例如,调用了哪个方法并更改了背景颜色。
这些方法被调用,如果你想用你的需要覆盖它,那么你必须覆盖这些方法。
- (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];
}
这些是在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
}
查看 Table View 类,我发现了这个顺序:
tableView:shouldHighlightRowAtIndexPath:
tableView:didHighlightRowAtIndexPath:
tableView:willSelectRowAtIndexPath:
tableView:didSelectRowAtIndexPath:
如果您打开 UITableView 头文件,您可以了解更多信息。