我有一個UIToolBar,和一個TextBox。當我選擇文本框時,鍵盤出現並且工具欄消失(因爲鍵盤位於工具欄的前面)。 我想做的事情,如Facebook的狀態更新,當您選擇文本框,工具欄是鍵盤上方:的iOS:工具欄上面的鍵盤
我怎樣才能做到這一點?
我有一個UIToolBar,和一個TextBox。當我選擇文本框時,鍵盤出現並且工具欄消失(因爲鍵盤位於工具欄的前面)。 我想做的事情,如Facebook的狀態更新,當您選擇文本框,工具欄是鍵盤上方:的iOS:工具欄上面的鍵盤
我怎樣才能做到這一點?
文本字段具有這種性質稱爲inputAccessoryView
,允許你把任何視圖在鍵盤的頂部。它看起來像你的情況是非常簡單的,否則,如果您不能使用附件視圖中,可以看幾十實現here的。
首先創建一個UIToolbar有你想要的按鈕等等
然後,所有你需要做的是
- (void)textViewDidBeginEditing:(UITextView *)textView
{
toolBar *tb = [[myToolbar alloc] init]
[textView setInputAccessoryView:tb];
}
如果不嘗試這種使用IB可能(未測試)
myToolbarClass* myToolbar = [[[NSBundle mainBundle]
loadNibNamed:@"toolbarNib" owner:self options:nil] objectAtIndex:0]
[textView setInputAccessoryView:myToolbar];
toolBar * tb = [[myToolbar alloc] init] 不理解它。我嘗試過:(void)textViewDidBeginEditing:(UITextView *)textView {[textView setInputAccessoryView:_toolBar]; }但仍然無法正常工作 –
抱歉是一個相當不好的解釋。 myToolbar是UIToolbar子類的一個例子。在子類中構建工具欄,然後使用上面的一個實例。德米特里也是正確的,你可以在viewDidLoad中創建你的UIToolbar;將UIBarButtonItems添加到它,然後將setInputAccessoryView添加到工具欄。 – Tomskiis
對不起,託姆斯基斯,我真的是iOS上的新手。我已經使用IB創建了工具欄並將其連接到我的課程。所以,我必須以編程方式創建工具欄? –
要使用inputAccessoryView我必須動態地創建工具欄? –
那麼,你可以在xib中構建你的工具欄,然後用代碼連接它,因爲我不認爲IB有配件視圖的插座。 –
我連接工具欄,以及這樣做: - (無效)textViewDidBeginEditing:(UITextView的*)的TextView { [TextView的setInputAccessoryView:_toolBar]; },但仍然沒有工作 –