2017-05-27 46 views
1

我有一個UITextField包含文本:「用戶名」。一旦用戶選擇了文本字段進行編輯,我想刪除用戶名。如何在Swift 3中用戶觸摸時從UITextField中刪除文本?

有比使用選擇器方法更好的方法嗎?

這是我目前使用的方法,但它似乎並沒有工作。

usernameTextField.addTarget(self, action: #selector(selectedUsernameField), for: .editingChanged) 

func selectedUsernameField(sender: UITextField){ 
     print("selectedUsernameField") 
     usernameTextField.text = "" 
    } 
+2

這就是'UITextField佔位符'的用途。 – rmaddy

回答

2

我這種情況下,你應該設置佔位符爲usernameTextField

usernameTextField.placeholder = "UserName" 

它會消失,因爲用戶將開始輸入這就是你想要的。

1

您可以使用此功能:

func textFieldDidBeginEditing(_ textField: UITextField) { 
    if textField == usernameTextField{ 
     textField.text = "" 
    } 
} 

當文本字段開始編輯它被調用。

雖然使用它,你需要讓你的類UITextFieldDelegate

,並說:

usernameTextField.delegate = self 
viewDidLoad

相關問題