2015-05-25 51 views
0

我有一個MKMapView,其中有許多代表商店的註釋。當用戶點擊註釋時,我會呈現一個自定義註釋視圖。該視圖包含一個收藏夾按鈕,將該商店添加到用戶的收藏夾中。iOS:按鈕背景圖像在註釋標註視圖中不發生變化

如果用戶按下此按鈕,它將其backgroundImage屬性更改爲指示其狀態爲最喜歡的商店的另一圖像。

發生的問題是圖像在用戶點擊時不會改變。它調用方法並將商店添加到其收藏夾,但不會更改圖像。如果用戶關閉標註,然後再次點擊標註以查看標註,則該按鈕會呈現正確的背景圖像。

此問題只發生在iOS7設備上,但會在iOS7模擬器和iOS8模擬器/設備上完美工作。

任何幫助將是偉大的,謝謝。

回答

0

首先爲兩個按鈕狀態設置2個不同的圖像。

[btn setBackgroundImage:img1 forState:UIControlStateNormal]; 
[btn setBackgroundImage:img2 forState:UIControlStateSelected]; 

然後buttonPress事件

設置

button.selected = !button.selected 
0

您使用的這樣的代碼一個用於改變一個圖像 -

 [btn setBackgroundImage:img1 forState:UIControlStateNormal]; 
    [btn setBackgroundImage:img1 forState:UIControlStateSelected]; 
    [btn setBackgroundImage:img1 forState:UIControlStateHighlighted]; 

和btnpressed

當嘗試這一行

[BTN setNeedsDisplay];

+0

還是一樣:( – Aish

+0

你找到很好的答案就像@rahul先生給了你可以投票的答案.....; ) –

相關問題