2017-04-12 48 views
0

免責聲明:我在教自己Swift & Xcode所以我的問題很簡單。學習Swift和Xcode - @IBAction func重置爲顯示,如果UITextField爲空

我正在構建一個簡單的應用程序來開始,它有一個文本字段連接到一個字符串輸出。

我對目前的課程有一個摘錄其內容爲:

「復位方法只需要清除這兩個名稱字段和文本的lyricsView,您可以通過設置他們的每一個文字都這樣做屬性爲空字符串「。

我明白這可能涉及一個if語句,但我認爲對此的解釋相當差。

這裏的視圖 - 控制:

類的ViewController:UIViewController的{

@IBOutlet weak var nameField: UITextField! 

@IBOutlet weak var lyricsView: UITextView! 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 


@IBAction func reset(_ sender: Any) { 
} 

@IBAction func displayLyrics(_ sender: Any) { 
} 

}

有人能解釋他們的意思是爲了名稱字段和lyricsView的屬性設置爲空字符串重啓?

謝謝!

回答

0

要清除那些我會使用領域:

@IBAction func reset(_ sender: Any) { 
    nameField?.text = "" 
    lyricsView?.text = "" 
} 

問號會安全地執行,即使由於某種原因,這些字段尚未加載,或已被釋放或刪除代碼。

+0

太棒了。我剛剛開始學習如何真棒?和!運營商是。 –

1

如果要清除textField或textView的文本,只需將text屬性設置爲空字符串即可。當你的教訓提示:

復位方法只需要清除出 名稱字段和兩個文本lyricsView,您可以通過他們的每一個 文本屬性設置爲空字符串做到這一點。

復位方法應該是這樣的:

@IBAction func reset(_ sender: Any) { 
    nameField.text = "" 
    lyricsView.text = "" 
} 
+0

謝謝Danh! –

+0

我在編程方面沒有經驗,所以我相信我的一些問題很明顯。 –

0

添加此復位方法刪除的內容: -

nameField.text = "" 
lyricsView.text = "" 
+0

謝謝,Anuraj。我是新來的,所以很多ELI5時刻都在進行中:) –

0

當你輸入內容nameField東西顯示在你的lyricsView 。所以,應該有一種方法來清除你輸入的內容(以及顯示的內容)。因此,重置功能(我想它是綁定到一個按鈕)。

一旦您點擊重設,nameFieldlyricsView中的文字應該消失。

let anEmptyString = "" 

你需要的""分配給nameFieldlyricsView文本屬性:您可以通過一種叫做一個空字符串,這僅僅是兩個雙引號都分配做到這一點。