2014-03-13 206 views
0

我想改變按鈕圖像後點擊它,但它不工作。通過點擊按鈕更改按鈕圖像IOS7

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

我已經看到它在這裏給出的許多解決方案的工作不適合我,請告訴我,還有什麼能讓它做任何其他方式。

回答

2

嘗試UIControlStateNormal

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

如果你是像「切換按鈕」,您可以使用下面的代碼

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

以前nib/storyboard或編程設置圖像的選中狀態後:

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

這樣,如果再次按下按鈕,它將返回到原始圖像。

如果你想改變形象,以 「vv.png」 好就用:

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

請,或者告訴我哪裏有安裝了圖像的setBackground代碼 – user3349668

+0

大概在'nib'文件或'storyboard',如果你想以編程方式做到這一點並有'btn'你可以在'viewDidLoad'中做參考 – dariaa

+0

感謝你的回覆dariaa上面的anil代碼爲我工作 – user3349668

0

試試這個

- (IBAction)click:(id)sender { 

    UIButton *btn = (UIButton*)sender; 

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

使用 (IBAction爲)點擊:(UIButton的*)發件人

,而不是

(IBAction)click:(id)sender 
2

試試這個

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