我在導航欄中有一個按鈕,當按下該按鈕時,它將調用一個在導航欄中將文本字段顯示爲titleView的函數(showAddItemtextField)。文本在文本字段中不可見
navigationItem.leftBarButtonItem = UIBarButtonItem(title: "+", style: .plain, target: self, action: #selector(showAddItemTextField))
這一點是好的,到目前爲止,我可以輸入到文本字段(我知道,因爲當我點擊的文本字段的佔位符文本消失,當我輸入我得到自動完成建議),但我輸入的文本是不可見的。
這裏是我到目前爲止的代碼:
// Show text field upon add button press
lazy var addItemTextField: UITextField = {
let textField = UITextField()
textField.placeholder = "Add a new item..."
return textField
}()
func showAddItemTextField() {
self.navigationItem.titleView = addItemTextField
}
我不知道如果這個問題是因爲新的文本字段,作爲navigationItem.titleView,那張是什麼,通常是有頂部(navigationItem.title )。當文本字段存在時,是否必須隱藏navigationItem.title?或者是一個不同的問題?
我還應該補充說,當我點擊文本字段時屏幕鍵盤不會出現。
你的'showAddItemTextField'代碼沒有意義。您不能將相同的文本字段作爲子視圖添加到'self.view'中,並作爲標題視圖添加到'navigationItem'中。 – matt
@matt我將刪除addSubview,我意識到現在它是不必要的,但我不認爲這是什麼導致我的問題。你知道解決方案讓文本出現在我的文本字段嗎? – d0xi45