2014-12-30 40 views
1

我有一個UIButton這是文本設置爲"Play"UIView沒有隱藏,但裏面的按鈕是?

@IBOutlet weak var boatTypeGamePlayButton: UIButton! 

當這個按鈕被竊聽和它的文本設置爲"play",我想執行的一些功能:

@IBAction func boatTypeMatchingGameButtonTapped(sender: AnyObject) { 
    if boatTypeGamePlayButton.titleLabel?.text == "Play" { 
     boatTypeMatchingGameLabel.hidden = true 
     boatTypeGameLevelContainer.hidden = false 
     boatTypeMatchingGameTitle.text = "Select Level" 
     boatTypeGamePlayButton.setTitle("Cancel", forState: UIControlState.Normal) 
    } 

boatTypeGameLevelContainer是我有一個UIView裏面有四個按鈕。

問題是,boatTypeGameLevelContainer確實變得可見,它應該,但它裏面的按鈕沒有。我試着爲按鈕製作IBOutlet s,並將它們設置爲在此功能中可見,但它沒有改變任何東西。

所有其他方法我設置正在...

我也有一個else聲明(這意味着的boatTypeGamePlayButton的文本設置爲"Cancel"):

else { 
    boatTypeMatchingGameLabel.hidden = false 
    boatTypeGameLevelContainer.hidden = true 
    boatTypeMatchingGameTitle.text = "Boat Type Matching Game" 
    boatTypeGamePlayButton.titleLabel?.text = "Play" 
    boatTypeGamePlayButton.setTitle("Play", forState: UIControlState.Normal) 
} 

我怎樣才能確保按鈕出現?我很感激任何支持。

更新:我添加了使用故事板的按鈕,並且我沒有在代碼中更改它們的任何屬性。

+0

確保你想要顯示/隱藏的視圖都包含在容器視圖中,並且前後的順序是正確的。 –

+0

你能提供一個什麼視圖問題的圖片 – soulshined

+0

@soulshined我很抱歉,我是新的堆棧溢出,我需要10個聲望才能添加圖像,而我只有5個。如果有幫助,當我運行模擬器UIView只顯示我在故事板中設置的紅色背景。我使用故事板將按鈕添加到UIView中。感謝您的支持。 –

回答

0

您已將相同的標題添加到導致混淆的兩個語句中。如果兩個實例的文字都是Play,則會產生一些問題,並取消。我會建議隔離條款。

@IBAction func boatTypeMatchingGameButtonTapped(sender: AnyObject) { 
if boatTypeGamePlayButton.titleLabel?.text == "Play" { 
//some code here 
} 
else if boatTypeGamePlayButton.titleLabel?.text == "Cancel"{ 
//do your other code here 
} else { 
//do something if none of those statements are true 
} 

編輯

如果說明該視圖填充和你的背景顯示您在故事板上設置它可能是由於缺乏自動佈局約束的顏色。通常,當您爲特定尺寸創建故事板或xib並且以不同的尺寸運行時,則您指定的沒有約束爲您的視圖及其組件設置,它們將無法編譯並以故事板中看到的方式運行。

您應該檢查Apple提供的Auto Layout Guide。它爲您未來的項目提供了廣泛的和極好的資源。如果您正確地學習,自動佈局非常直觀。祝你好運

+0

@CWApps因此,您可以提供更多關於如何在GameLevelContainer中設置按鈕的細節,因爲這是問題的核心。你是如何添加它們的?求真務實/故事板?在顯示容器之前是否更改了它們的任何屬性或屬性? – soulshined

+0

我更新了我的答案。 –