私は現在、iPhoneおよびiPodtouch用のOpenGLESゲームを開発しています。
UIKeyboardを簡単にプルアップするにはどうすればよいのでしょうか。 UITextViewのUITextFieldを使用せずにUIKeyboardをプルアップする公式の文書化された可能性はありますか?
私は現在、iPhoneおよびiPodtouch用のOpenGLESゲームを開発しています。
UIKeyboardを簡単にプルアップするにはどうすればよいのでしょうか。 UITextViewのUITextFieldを使用せずにUIKeyboardをプルアップする公式の文書化された可能性はありますか?
UIResponderをサブクラス化し、UIKeyInputプロトコルを宣言すると、firstResponderになるとキーボードが表示されます。
ここでUIKeyInputプロトコルを参照してください。
私をつまずかせたのは、canBecomeFirstResponderメッセージをオーバーライドする必要があるということです。
「公式に」可能ではありません。Appleのガイドラインの範囲内でUIKeyboardオブジェクトにアクセスすることはできません。
非表示のUITextFieldを作成してから呼び出す[textField becomeFirstResponder]
と、その役割を果たします。最初にUITextFieldをサブクラス化してから、デリゲートメソッドtextField:shouldChangeCharactersInRange:
をオーバーライドして、テキスト入力を目的の場所にリダイレクトすることもできます。
それは確かに可能です。私はこれで多くの苦労をしました。UIKeyInputプロトコルを使用すると、UITextFieldまたはUITextViewを使用せずにキーボードをプルできます。ただし、iOS3.2以降でのみ使用できます。これがそのチュートリアルです。
お役に立てば幸いです。
テキストフィールドのフレームを表示されている画面の外に配置して、UITextFieldが表示されていないキーボードを表示しました。
#define TEXT_FRAME -50,-50,0,0
self.textField = [[UITextField alloc] initWithFrame:CGRectMake(TEXT_FRAME)];
「ファーストレスポンダー」を設定すると、入力領域が表示されずにキーボードが表示されます。
// show the keyboard
[self.textField becomeFirstResponder];
私は後でその考えを捨てました。ただし、Appleのガイドラインへの準拠はわかりません。
試したことはありませんが、http://www.cocoadev.com/index.pl?UIKeyboardに、動作するはずのコードが表示されます。