2011-08-10 108 views
1

我有幾個UITextFields。我想禁用帶自動更正/鍵盤的「雙擊」。我正在使用輕擊功能來選擇要激活哪個UITextField。如何禁用UITextField中的雙擊鍵盤彈出窗口?

+0

一個水龍頭會彈出鍵盤 - 什麼是雙擊? – memmons

+0

單擊選擇UITextField。當我雙擊它時會彈出鍵盤。我不會禁用雙擊鍵盤。 – TWcode

+0

您必須創建雙擊手勢,然後因爲默認行爲是在您第一次點擊文本框時調出鍵盤。它不會在單擊時「選擇」它。 – memmons

回答

0

你可以告訴一個的UITextField不使用的UITextView的textFieldShouldBeginEditing委託方法開始編輯過程:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField { 
    if (some conditon) { 
    return NO; 
    } else { 
    return YES; 
    } 
} 
的方法

蘋果文檔參考: http://developer.apple.com/library/ios/#documentation/uikit/reference/UITextFieldDelegate_Protocol/UITextFieldDelegate/UITextFieldDelegate.html

some condition很可能是一張支票看看用戶是否選擇了UITextField來激活它,或者它是否已經處於活動狀態,並且應該將鍵盤拉起來。

你可以繼承UITextView,給它一個「selected」屬性,並使其成爲UITextViewDelegate。如果「selected」爲false,則在textFieldShouldBeginEditing:中將其設置爲true並返回NO;否則,返回YES。那只是我頭頂的一個隨意的想法。

+0

這就是我用來激活UITextfield的。我只想禁用編輯鍵盤(雙擊)。代碼示例:tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapRecieved :)]; tex2.userInteractionEnabled = YES; [tex2 addGestureRecognizer:tap]; [點擊發布]; tap = nil; – TWcode

+0

得到它的工作。感謝您的幫助 – TWcode

+0

很高興您能夠使用它! – AlexFZ

相關問題