2012-02-02 108 views
7

我有一個UITextView接收來自鍵盤的輸入。 「自動啓用返回鍵」複選框被選中,因此當UITextView爲空時,返回鍵被禁用。如何手動啓用或禁用鍵盤上的返回鍵?

我在鍵盤上方有一個表情符號欄,可以將表情符號添加到UITextView以下,但這是問題;當UITextView是空的,我加入表情符號到UITextView這樣的:

[inputTextView insertText:@"\ue40d"]; 

那麼ReturnKey仍然被禁用,雖然UITextView中的文本屬性不爲空。

我插入表情後嘗試這樣做:

[inputTextView setEnablesReturnKeyAutomatically:NO]; 

沒有結果。它看起來像啓用/禁用鍵盤的返回鍵只能通過鍵盤輸入字符來觸發。

任何想法的如何手動啓用/禁用返回鍵?

+0

它是否工作打算,如果你輸入普通的文本進去? – 2012-02-02 09:39:03

回答

2

這是一個黑客攻擊的一位,但你可以嘗試通過剪貼板而不是插入的文本:

UIPasteboard* generalPasteboard = [UIPasteboard generalPasteboard]; 

// Save a copy of the system pasteboard's items 
// so we can restore them later. 
NSArray* items = [generalPasteboard.items copy]; 

// Set the contents of the system pasteboard 
// to the text we wish to insert. 
generalPasteboard.string = text; 

// Tell this responder to paste the contents of the 
// system pasteboard at the current cursor location. 
[textfield paste: nil]; 

// Restore the system pasteboard to its original items. 
generalPasteboard.items = items; 

// Free the items array we copied earlier. 
[items release]; 
-1

取消選中「自動啓用Return鍵」

+1

這使得它始終處於啓用狀態...... – GreenKiwi 2012-07-02 22:41:31