2016-12-07 45 views
-2

我有兩個UIButtons,我想在按下按鈕時禁用另一個按鈕。禁用UIButton會引發錯誤

我試過不同的海報代碼,但一直無法獲得一個UIButton來禁用其他UIButton。

我能夠setTitleColor和禁用使用發件人,但不適用於其他按鈕。

以下是IF/Else語句的部分代碼,但它對於有經驗的編碼人員應該足夠了。

該代碼成功構建,但在運行時顯示的最後一行引發異常。致命錯誤:在解包可選值時意外發現nil。主題1:EXC_BAD_INSTRUCTION(代碼= EXC_I386_I ...

import UIKit 
import CoreData 

class ViewController: UIViewController { 
@IBOutlet weak var buttonAdd: UIButton! 
@IBOutlet weak var buttonEdit: UIButton! 

@IBAction func buttonAdd(_ sender: AnyObject) 
{ 
    if (sender.currentTitle == "Add") 
    { 

     sender.setTitle("Save", for:UIControlState.normal) 
     sender.setTitleColor(UIColor.red, for:UIControlState.normal) 

     buttonEdit.isEnabled = false FAILS ON THIS LINE 
+1

你的故事板沒有出口'buttonEdit'。 – matt

+0

行,所以如何我完成了爲故事板添加插件?請詳細說明代碼 – ot1

+3

沒有涉及的代碼。請不要告訴我如何回答。 – matt

回答

0

這通常發生在從你的故事板代碼出口被搞砸進入故事情節,用鼠標右鍵點擊黃色的ViewController符號,你會看到一個警告。您應該通過點擊「X」刪除與該警告的條目,並重新創建一個新的出口形式故事板代碼。

enter image description here

+0

在View Controller Scene ... rt中。點擊黃色的視圖控制器彈出打開視圖控制器框,我的按鈕,buttonAdd和buttonEdit都出現在出口下。兩個按鈕都沒有黃色警告,因此沒有X點擊。 – ot1

+0

我想通了,從視圖控制器框中拖出一條藍線到故事板上的相應按鈕。 Thx nitinsh99 – ot1

+0

由於我沒有安裝故事板的插座,因爲我不知道如何,所以我手動安裝了在View Controller類中看到的插座代碼。但顯然,丟失的代碼需要別的地方。 – ot1