2012-07-05 107 views
3

我有一個可編輯的文本視圖來輸入一些描述。當我點擊textview鍵盤時出現。我的問題是,當我嘗試通過鍵盤輸入一些文本時,它並未進入textview。請提前幫助我。無法在textview中輸入文本

+5

請輸入密碼。我們需要合作的東西,因爲我們中只有2人是精神病患者,而且他們已經睡着了。 – CodaFi

+0

設置你的textview行爲Editable.if你已經用xib使用textview然後在xib中點擊你的textview。轉到屬性檢查器,您將能夠設置行爲。或者如果你已經編程設置textview然後編寫代碼「textView.userInteractionEnabled =是;」和你的「textview.editable = YES;」 – Wolverine

+0

請張貼您的代碼... !! –

回答

5

你不應該在NO ...返回

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

否則它不會讓你添加文字。

編輯: 從TextView參考:

的TextView:shouldChangeTextInRange:replacementText:請求委託 是否指定的文本應當在文本視圖來代替。

(BOOL)的TextView:(UITextView的*)的TextView shouldChangeTextInRange:(NSRange)範圍replacementText:(的NSString *)文本

參數:

的TextView:包含變化的文本圖。

範圍:當前的選擇範圍。如果範圍的長度爲0,範圍 反映當前插入點。如果用戶按下刪除鍵 ,範圍的長度爲1,空字符串對象將替換單個字符的 。

text:要插入的文本。

返回值:是,如果 舊文本應替換爲新文本;否,如果更換 操作應該中止。

+1

是的,這是正確的。 – Wolverine

2

您必須在此委託方法返回YES,否則沒有文字無論如何將在你的代表,像這樣的字段被允許:

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { 

    if([text isEqualToString:@"\n"]) { 
     [m_CtrlTxtViewDescription resignFirstResponder]; 
     [self setViewMovedUp:NO]; 
     return NO; 
    }  
    return YES; 
} 

shouldChangeTextInRange...,顧名思義,是當通過鍵盤添加文本時文本視圖調用的方法。詢問代表是否應添加文本。

0

是的。它也發生在我身上。但不用擔心,我們無法通過我的電腦鍵盤輸入文本,但是當您聲明時。

self.yourtextview.userInteractionenabled = YES; 

self.yourtextview.editable = Yes; 

然後,您可以通過使用設備或模擬器keyboard.It將很好地工作輸入文本。