自定义UITableViewCell与图像突出显示

时间:2013-05-01 06:48:53

标签: ios objective-c uitableview

我有一个自定义的UITableViewCell(从XIB实例化),图像为背景。现在,我想在选择单元格时将另一个图像作为背景(类似于标准单元格的蓝色闪烁)。我已经尝试使用setSelectedBackgroundView中的(void)setSelected:(BOOL)selected animated:(BOOL)animated甚至didSelectRowAtIndexPath设置它,但突出显示的背景不会显示。我做错了什么?

3 个答案:

答案 0 :(得分:3)

在您的自定义Cell.xib

enter image description here

接下来制作

enter image description here

最后这样做

enter code here

答案 1 :(得分:2)

你试过下面的一个

从TableView DataSource方法调用以下方法(cellForAtIndexPath)执行相同的任务

 - (void)setCellBGColorNormalAndSelectedForTableViewCell:(UITableViewCell*)cell cellForRowAtIndexPath:(NSIndexPath*)indexPath
{
  UIImageView *normalCellBG = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height)];

[normalCellBG setImage:[UIImage imageNamed:@"box_nonselected.png"]];//Set Image for Normal
[normalCellBG setBackgroundColor:[UIColor clearColor]];
[cell setBackgroundView:normalCellBG];


UIImageView *selecetedCellBG = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height)];
[selecetedCellBG setImage:[UIImage imageNamed:@"box_selected.png"]];//Set Name for selected Cell
[selecetedCellBG setBackgroundColor:[UIColor clearColor]];
[cell setSelectedBackgroundView:selecetedCellBG ];

 }

答案 2 :(得分:1)

您可以使用为XIB创建的CustomCell设置所选背景视图。您只需将UIImageView带到XIB imageviewCustomCell必须与selectedBackgroundView的高度相同)。现在,将CustomCell的插座名称“UIImageView”连接到您选择的背景视图selectionStyle。同时检查CustomCell的{​​{1}}是否不是。