无法更改按钮的图片。

10 浏览
0 Comments

无法更改按钮的图片。

我有3个按钮:

*.h:(所有按钮都有填充的圆圈,这意味着它们被分配了)

@property (strong, nonatomic) IBOutlet UIButton *AllButton;
@property (strong, nonatomic) IBOutlet UIButton *FavouritesButton;

*.m:

@synthesize FavouritesButton;
@synthesize AllButton;

还有代码:

AllButton.imageView.image =[UIImage imageNamed:@"list_top_icon_active-1.png"]; //图片存在

但它并没有改变图片!在其他视图中我也做了同样的操作,它们可以正常工作 - 到底是怎么回事?

我甚至尝试设置一个不存在的图片:

AllButton.imageView.image =[UIImage imageNamed:@"oisagiowgiow.png"]; //图片不存在 - 但没有错误或崩溃

有人可以帮我修复这个问题吗?

0
0 Comments

问题出现的原因:

无法更改按钮图片的原因是没有正确地给UIButton分配图片。在代码中,使用了错误的方法来分配图片。

解决方法:

正确的方法是使用以下代码来给UIButton分配图片:

[allButton setImage:[UIImage imageNamed:@"oisagiowgiow.png"] forState:UIControlStateNormal];

0
0 Comments

问题出现的原因是按钮的图片无法改变,解决方法是使用上述代码,并确保按钮的类型为custom。

0
0 Comments

问题的原因是使用了UIButtonTypeRoundedRect类型的按钮,而不是自定义类型的按钮。所以无法更改按钮的图片。

解决方法是使用自定义类型的按钮,并使用setImage:forState:方法设置按钮的图片。

以下是修复问题的代码:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
button.frame = CGRectMake(40, 140, 240, 30);
[button setTitle:@"title" forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];

0