我想在第一響應者(即顯示鍵盤)時向UITextField
添加輸入附件視圖。顯然,在此狀態下將UIView
分配給inputAccessoryView
屬性不會顯示此視圖。我必須先解僱鍵盤並重新選擇UITextField
。在鍵盤可見時向UITextField添加輸入附件視圖
有沒有方法可以添加輸入附件視圖而不關閉和重新選擇?
我想在第一響應者(即顯示鍵盤)時向UITextField
添加輸入附件視圖。顯然,在此狀態下將UIView
分配給inputAccessoryView
屬性不會顯示此視圖。我必須先解僱鍵盤並重新選擇UITextField
。在鍵盤可見時向UITextField添加輸入附件視圖
有沒有方法可以添加輸入附件視圖而不關閉和重新選擇?
如果可能,只分配inputAccessoryView
一次。如果您需要對其進行定製,並且只能確定在成爲第一響應者之前非常晚,那麼我仍然只會分配一次。但在UITextFieldDelegate
方法textFieldShouldBeginEditing:
中自定義inputAccessoryView
的子視圖。像這樣:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
[self setupInputAccessoryViewForTextField:textField];
return YES;
}
編輯:根據@ fabian789此方法不起作用。因人而異。
你可以嘗試調用
[myTextField setNeedsLayout];
[myTextField setNeedsRedraw];
,迫使它重繪自己?
聲明:這正是我想要的,我不知道它會起作用!
+1不錯的想法,但不幸的是它不起作用。 – fabian789 2011-05-10 17:25:55
我只是想動態地添加/刪除輸入附件視圖。 最後我簡單地做這樣的:
[self.responceTextView resignFirstResponder];
self.responceTextView.inputAccessoryView = keyBoardToolbar;
[self.responceTextView becomeFirstResponder];
好主意,謝謝。我現在刪除並重新添加子視圖。 – fabian789 2011-05-11 14:18:24