我試圖提醒一個文本輸入視圖,因爲我有最大。 3種選擇,我的客戶希望以這種方式呈現。警報,而不是鍵盤在文本字段中輸入 - >光標停留在文本字段Swift2
基本沒問題,我可以點擊文本框,導致顯示警報。在選擇文本字段中的值後得到正確更新,但隨後,光標停留在文本字段中(我假設由於水龍頭,文本字段是第一響應者)
現在的問題是,當我點擊時,當光標在其中時,默認鍵盤將打開。那麼,我能做些什麼來阻止它做到這一點?
我曾嘗試各種位置下面的東西代碼:
resignFirstResponder()
becomeFirstResponder()
此外,當即時通訊目前正在編輯文本框的另一個與鍵盤,即時通訊能夠敲擊相應的文本框時顯示警告。這導致鍵盤覆蓋警報,因爲即使發生這種情況,im也無法關閉鍵盤。
嘗試針對這樣的:(用其他文本框
if (alertView != nil) {
alertView?.dismiss()
} //Not very professional, but still in development :)
這裏有一些重要的代碼片段的事件方法來了解我是如何建立起來:
這個函數是文本框的EditingDidBegin事件警報的
@IBAction func TextboxUnitEditing(sender: UITextField) {
//One try of preventing the cursor (not working)
tableView.endEditing(true)
...
/* Unrelated Code here */
...
alertView = SwiftAlertView(...)
...
/* Unrelated Code here */
...
alertView.show()
}
委託方法
func alertView(alertView: SwiftAlertView, clickedButtonAtIndex buttonIndex: Int) {
//buttonIndex == 1 means, cancel was tapped
if (buttonIndex == -1) {
currentCell = nil
tableView.endEditing(true)
return
}
...
/* Change value in textfield */
}
所以我的問題是,出了什麼問題?我需要調用什麼來擺脫光標?如果您還需要了解更多信息,請告訴我,我可以提供更多信息。
在此先感謝。
編輯:
已解決。相反的:
self.tableView.endEditing(true)
我不得不這樣做:
我有點失落在這個問題上;他們是否輸入文字?如果沒有,你只是想給出3個選項比使用alertController,選擇粘貼一些代碼到答案,因爲這裏沒有空間。 – user3069232
感謝您的建議,但不是我在找什麼。我忘了告訴你的是,即時通訊支持ios7。因此,沒有AlertController。但是我可以自己解決這個問題,因爲我唯一要做的就是將「tableView.endEditing(true)」語句分派給主隊列。 – glace