当我点击ios应用程序中的按钮时,我想要更改图像

时间:2014-07-22 21:05:47

标签: ios uibutton

标题在我的按钮

中解释得非常多
- (IBAction)LikeBtn:(id)sender

单击按钮时,我希望将图像从小灰色图标交换为绿色图标 我试着用这种方式,但我似乎无法让它工作

- (IBAction)LikeBtn:(id)sender {

    UIButton *senderButton = (UIButton *)sender;
    [senderButton setImage :@"liked.png" forState:UIControlStateSelected];
{

是否有任何想法如何在xcode控制面板中选择图像时如何完成此操作并命名为likebtn.png并且需要在点击后将其更改为likes.png

3 个答案:

答案 0 :(得分:1)

假设您已将图像正确添加到项目中,并且它是一个png:

- (IBAction)LikeBtn:(id)sender {

UIButton *senderButton = (UIButton *)sender;
[senderButton setImage:[UIImage imageNamed:@"liked"] forState:UIControlStateSelected];
}

PS:您确定要为所选状态设置图像吗?如果没有,请改用UIControlStateNormal

答案 1 :(得分:0)

我认为在创建按钮时需要在viewDidLoad中设置setImage:

[LikeBtn setImage :[UIImage imageNamed:@"liked.png"] forState:UIControlStateSelected];

答案 2 :(得分:0)

除了Maddy所说的关于为选定状态传递UIImage而不是字符串之外,您还需要声明该按钮现在已被选中。如果您将代码更改为此代码,它应该适合您

-(IBAction)LikeBtn:(id)sender {

    UIButton *senderButton = (UIButton *)sender;
    [senderButton setImage:[UIImage imageNamed:@"liked.png"] forState:UIControlStateSelected];

   senderButton.selected = YES;

}

您还可以在IBAction方法中放置if (senderButton.selected)条件,以检测和切换按钮状态,将状态从YES更改为NO。

希望这有帮助