选择或突出显示UITableViewCell时调用哪种方法

时间:2013-08-30 08:12:21

标签: ios uitableview

当选择或突出显示tableviewcell时,我们发现它的背景颜色已更改(例如,更改为蓝色)。我想知道在这个过程中调用了多少个方法以及使用什么方法。希望你的回答!

此外,我想深入了解一些方法,例如,调用哪种方法并更改背景颜色。

3 个答案:

答案 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];
}

Here is the Documentary

答案 1 :(得分:0)

这些是UITableViewCell录制事件调用的方法:

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated
{
  // do something
}

- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
  // do something
}

访问Apple文档,在UITableViewCell

上设置/选择

http://developer.apple.com/library/ios/documentation/uikit/reference/UITableViewCell_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006938-CH3-SW69

http://developer.apple.com/library/ios/documentation/uikit/reference/UITableViewCell_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006938-CH3-SW3

此外,您可以通过以下方式获得更多控件:

 - (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头文件,可以了解更多信息。