12

私は現在、iPhoneおよびiPodtouch用のOpenGLESゲームを開発しています。

UIKeyboardを簡単にプルアップするにはどうすればよいのでしょうか。 UITextViewのUITextFieldを使用せずにUIKeyboardをプルアップする公式の文書化された可能性はありますか?

4

5 に答える 5

19

UIResponderをサブクラス化し、UIKeyInputプロトコルを宣言すると、firstResponderになるとキーボードが表示されます。

ここでUIKeyInputプロトコルを参照してください。

私をつまずかせたのは、canBecomeFirstResponderメッセージをオーバーライドする必要があるということです。

于 2011-09-26T02:23:29.867 に答える
14

「公式に」可能ではありません。Appleのガイドラインの範囲内でUIKeyboardオブジェクトにアクセスすることはできません。

非表示のUITextFieldを作成してから呼び出す[textField becomeFirstResponder]と、その役割を果たします。最初にUITextFieldをサブクラス化してから、デリゲートメソッドtextField:shouldChangeCharactersInRange:をオーバーライドして、テキスト入力を目的の場所にリダイレクトすることもできます。

于 2009-09-07T14:57:33.373 に答える
3

それは確かに可能です。私はこれで多くの苦労をしました。UIKeyInputプロトコルを使用すると、UITextFieldまたはUITextViewを使用せずにキーボードをプルできます。ただし、iOS3.2以降でのみ使用できます。これがそのチュートリアルです。

お役に立てば幸いです。

于 2012-02-19T05:01:21.100 に答える
1

テキストフィールドのフレームを表示されている画面の外に配置して、UITextFieldが表示されていないキーボードを表示しました。

#define TEXT_FRAME                 -50,-50,0,0

self.textField = [[UITextField alloc] initWithFrame:CGRectMake(TEXT_FRAME)];

「ファーストレスポンダー」を設定すると、入力領域が表示されずにキーボードが表示されます。

// show the keyboard    
[self.textField becomeFirstResponder];

私は後でその考えを捨てました。ただし、Appleのガイドラインへの準拠はわかりません。

于 2011-06-22T08:45:32.627 に答える
0

試したことはありませんが、http://www.cocoadev.com/index.pl?UIKeyboardに、動作するはずのコードが表示されます。

于 2009-09-03T22:22:08.927 に答える