2013-10-31 89 views
5

嗨,我想提出一個自定義的的UIButton具有圖像進行UIControlStateNormalUIControlStateSelected。但是,當我設置[myBtn setEnabled:No];它更改回UIControlStateNormal狀態,而不是在選定狀態禁用。我如何保持按鈕的當前狀態並禁用它?保持UIButton的當前狀態,當它被禁用

+0

它是固定的嗎? – Balu

+1

只是在我的情況檢查它應該工作的感謝,並會標記你的答案,只要我測試它:) – Hassy

回答

3

嘗試設置這樣的,我希望這將有助於你

[buttMR setBackgroundImage:yourButton.currentBackgroundImage forState:UIControlStateDisabled]; 
+1

它確實改變了圖像,但得到了一個問題「當圖像被選中時,它的圖像處於選中狀態,即使當我提到所選圖像是禁用狀態圖像時,我將其改變爲禁用狀態,它會加載正常狀態圖片」。但是,如果按鈕在禁用時未處於選定狀態,則會成功加載禁用的圖像。任何想法如何解決這個謎? – Hassy

+0

我解決了這個謎題,但硬編碼myButton setSelected:NO只是調用setEnabled之前:NO – Hassy

0

圖像設置爲禁用狀態,以及:UIControlStateDisabled

[myButton setImage:disabledImage forState:UIControlStateDisabled]; 
+0

然後我將不得不檢查按鈕的當前狀態是否正常或選擇,然後我將它分配給它。 – Hassy

5

使用userInteractionEnabled = NO而不是啓用禁用。