简体   繁体   English

通过单击按钮IOS7更改按钮图像

[英]Change button image by clicking on the button IOS7

I'm to trying change the button image after tapping on it but its not working. 我要尝试在点击按钮后更改按钮图像,但是它不起作用。

- (IBAction)click:(id)sender {
     UIButton *btn = (UIButton*)sender;
     [btn setBackgroundImage:[UIImage imageNamed:@"vv.png"] forState:UIControlStateHighlighted];
    }

I have seen the many solutions which given here its not working for me please tell me is there any other way to make it done. 我已经看到了许多解决方案,这些解决方案对我不起作用,请告诉我还有其他方法可以完成它。

试试UIControlStateNormal

[btn setBackgroundImage:[UIImage imageNamed:@"vv.png"] forState:UIControlStateNormal];

尝试这个

[btn setBackgroundImage:[UIImage imageNamed:@"vv.png"] forState:UIControlStateNormal];

If you are after something like "toggle button" you can use the following code 如果您喜欢“切换按钮”之类的内容,则可以使用以下代码

- (IBAction)click:(id)sender {
    UIButton *btn = (UIButton*)sender;
    btn.selected = !btn.selected;
}

previously setting up the image for the selected state in nib / storyboard or programmatically: 先前通过nib / storyboard或以编程方式为选定状态设置了图像:

- (void)viewDidLoad {
     [super viewDidLoad];  
     [self.btn setBackgroundImage:[UIImage imageNamed:@"vv.png"] forState:UIControlStateSelected];
}

This way if you press the button again it will get back to the original image. 这样,如果再次按下该按钮,它将返回到原始图像。

If you want to change image to "vv.png" for good then just use: 如果您想将图像永久更改为“ vv.png”,则只需使用:

 [btn setBackgroundImage:[UIImage imageNamed:@"vv.png"] forState:UIControlStateNormal];

use (IBAction)click:(UIButton *)sender 使用(IBAction)click:(UIButton *)sender

instead of 代替

(IBAction)click:(id)sender 

Try this 尝试这个

- (IBAction)click:(id)sender {

    UIButton *btn = (UIButton*)sender;

    [btn setImage:[UIImage imageNamed:@"vv.png"] forState:UIControlStateNormal];
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM