UIButton图像没有出现

Posted

技术标签:

【中文标题】UIButton图像没有出现【英文标题】:UIButton image not appearing 【发布时间】:2014-10-20 12:30:12 【问题描述】:

我创建了一个带有按钮的自定义 UICollectionViewCell

.h 文件:

@interface MyCVC: UICollectionViewCell
-(void)setButtonImage:(UIImage *)image;
@end

.m 文件:

@interface MyCVC()
@property (weak, nonatomic) IBOutlet UIButton *myButton;
@end

@implementation MyCVC
-(void)setButtonImage:(UIImage *)image

    [self.myButton setImage:image forState:UIControlStateNormal];

@end

但是,在 MyCVC 上调用 setImage 不会导致图像出现,而是用 Tint 颜色填充按钮。 我还注意到,如果我在运行 setImage 之前将界面构建器中的按钮图像设置为任何图像,稍后会按预期工作, 问题是什么 ?

【问题讨论】:

你换了图片试试? 您的按钮名为myButton,但您正在设置名为buttonImage 的图像。 (???) 显然是我在简化代码时犯的一个错误,请注意按钮名称是否正确 【参考方案1】:

我认为你应该这样做

[self.myButton setBackgroundImage:image forState:UIControlStateNormal];

【讨论】:

【参考方案2】:
[self.buttonImage setImage:image forState:UIControlStateNormal];

应该是

[self.myButton setImage:image forState:UIControlStateNormal];

【讨论】:

以上是关于UIButton图像没有出现的主要内容,如果未能解决你的问题,请参考以下文章

UIButton 选择状态的图像出现在正常状态的图像后面

为啥 UIButton 上的 UIImageView 会在触摸时重新出现?

UIButton背景图像没有改变

如何使没有文本的 UIButton 成为其图像的大小?

多次点击时更改 UIButton 图像

如何使整个区域可点击?