2013-05-06 66 views
3

我試圖將UITextView(而不是UITextField)上的「返回」鍵更改爲「完成」鍵。我有以下代碼不更新按鈕並保持按鈕不變。該按鈕作爲「返回」鍵開始,如果他們點擊「返回」,我希望它變成「完成」鍵。UITextView returnKeyType

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { 
    // this is only run when they hit return once 
    textView.returnKeyType = UIReturnKeyDone; 
    [textView reloadInputViews]; 
} 
+0

因此,您有一個頁面按鈕的值爲RETURN,並且您希望它在單擊時更改爲完成? – Shadowpat 2013-05-06 22:29:56

+1

是的,它是iPhone上的彈出式鍵盤。對不起,我忘了提到這一點。 – user2356157 2013-05-06 22:40:50

+0

哦,好吧,我現在得到它....也許一些JavaScript或JQuery會做伎倆 – Shadowpat 2013-05-06 23:14:48

回答

2

不僅僅是一個乾淨的解決方案,這是一個黑客。您可以嘗試隱藏並顯示鍵盤(即resignFirstResponder,更改返回鍵樣式和becomeFirstResponder)。

但它會產生一個奇怪的動畫。爲了避免這個問題,你應該能夠防止刷新屏幕。

順便說一句,在這種方法的最後,你會返回YESNO

+0

我添加了resignFirstResponder併成爲FirstResponder,並且該按鈕正確更改,但是我無法避免奇怪的動畫。如何防止屏幕被刷新?在該方法結束時,我返回YES。謝謝。 – user2356157 2013-05-07 17:11:49

+0

我試圖找回代碼,但失敗了......也許你應該創建一個專門的問題。 – MonsieurDart 2013-05-17 08:47:31

+0

我在iOS6.1或iOS7中看不到鍵盤動畫。 – 2013-10-05 15:00:59