2011-06-23 71 views
0

這裏肯定有很多UIButton的問題,我希望能找到答案,但沒有什麼特別的問題。UIButton高亮設置不會出現

我有幾個按鈕,我可以在程序運行時調用button.highlighted = YES;作爲任何按鈕,並且它突出顯示。

我想我可以使用相同的技術將按鈕的突出顯示狀態設置爲YES,然後在按下另一個按鈕後將其設置爲NO。這樣,當前的選擇仍然突出顯示。

例如:

-(IBAction) buttonPressed:(UIButton *)button 
{ 
    if (button.tag==1) 
    { 
     self.button1.highlighted=YES; 
     self.button2.highlighted=NO; 
     // do other program stuff here 
    } 

    if (button.tag==2) 
    { 
     self.button2.highlighted=YES; 
     self.button1.highlighted=NO; 
     // do other program stuff here 
    } 
} 

即使亮點正常工作,如果我把裏面viewDidLoad中的highlighted = YES;代碼。但上面的代碼不起作用。亮點並不堅持。按鈕的工作原理,並做其他的東西,它需要做的,但突出顯示未能堅持。

我會認爲這應該是非常基本的。是否iOS在按鈕操作後自動將所有按鈕高亮設置爲NO?

+0

確保您在viewDidLoad中的第一個呼叫是'[super viewDidLoad]' –

+0

它確實存在。 – johnbakers

+0

你的意思是「精彩的作品沒有他們自己的」?你的問題是,你想設置一個按鈕,突出顯示一個視圖? – dasdom

回答

0

可能是你應該使用其他手段來呈現光亮狀態,因爲從UIControl的文檔聲明:

默認情況下,控制不 突出。 UIControl自動設置並在觸摸進入時自動清除此狀態 ,並且 在跟蹤過程中退出並且 觸摸時彈出。

+0

我想知道這是否意味着即使您只觸摸其中一個按鈕,UIControl也會影響所有按鈕的所有高亮狀態;因爲那是我的經歷。我懷疑我需要做類似這樣的事情:http://forums.macrumors.com/showthread.php?t=530998雖然當你想要做的只是操縱一個亮點 – johnbakers

+0

果然,它通過使用'selected'屬性而不是'highlight'來改變背景圖像和標題文本的顏色。 – johnbakers

0

您可以嘗試使用'selected'屬性而不是'highlight'屬性。