Iphone setImage:forState:for自定义UITableViewCell的UIButton

Iphone setImage:forState:for自定义UITableViewCell的UIButton,iphone,objective-c,ios,uitableview,Iphone,Objective C,Ios,Uitableview,在我的nib文件中,我有一个插座连接到UITableViewCell的UIButton。在哪里可以设置代码中按钮不同状态的图像 默认情况下,有一个方法 -(id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier { } 我尝试为UIControlStateNormal和UIControlStateSelected设置图像,但在加载TableViewCell时看不到我

在我的nib文件中,我有一个插座连接到UITableViewCell的UIButton。在哪里可以设置代码中按钮不同状态的图像

默认情况下,有一个方法

-(id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier    {

}
我尝试为UIControlStateNormal和UIControlStateSelected设置图像,但在加载TableViewCell时看不到我的状态。我使用UINib方法加载TBV单元:

MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:@"MyCellIdentifier"];
     if (cell == nil) {
     UINib *cellNib = [UINib nibWithName:@"MyCell" bundle:nil];
     [cellNib instaniateWithOwner:self options:nil];
     cell = self.MyCell;
     self.MyCell = nil;
}
return cell;

谢谢。

您可以在Interface Builder中设置所有这些。除非您有非常字符串的理由在代码中这样做。以下是如何在IB中执行此操作-

打开右侧栏,然后单击状态配置,在那里可以看到按钮的各种状态:默认、高亮、选中和禁用。现在,您可以为每个州设置不同的图像,为每个州设置不同的字体类型和字体颜色。希望这有帮助


谢谢,我不知道你能把它放在那里。它按预期工作。出于好奇,我应该把这段代码放在UITableViewCell子类的什么地方?如果您通过代码设置UIButton的不同状态,那么您最终会编写冗长的代码。相反,我建议通过IB为特定uitableviewcell的uibuttons设置这些状态&重用该单元格。。。这很简单。