uitextview のキーボード タイプを取得する方法を知りたいです。textfield.keyboardtype を使用して uitextfield のキーボード タイプを取得できましたが、uitextview では機能しないようです。これで私を助けてください。
前もって感謝します。
uitextview のキーボード タイプを取得する方法を知りたいです。textfield.keyboardtype を使用して uitextfield のキーボード タイプを取得できましたが、uitextview では機能しないようです。これで私を助けてください。
前もって感謝します。
これを試して
UITextView *txvw = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 24, 20)];
txvw.keyboardType =UIKeyboardTypeURL;
および代替キーボードタイプは
UIKeyboardTypeDefault, // Default type for the current input method.
UIKeyboardTypeASCIICapable, // Displays a keyboard which can enter ASCII characters, non-ASCII keyboards remain active
UIKeyboardTypeNumbersAndPunctuation, // Numbers and assorted punctuation.
UIKeyboardTypeURL, // A type optimized for URL entry (shows . / .com prominently).
UIKeyboardTypeNumberPad, // A number pad (0-9). Suitable for PIN entry.
UIKeyboardTypePhonePad, // A phone pad (1-9, *, 0, #, with letters under the numbers).
UIKeyboardTypeNamePhonePad, // A type optimized for entering a person's name or phone number.
UIKeyboardTypeEmailAddress, // A type optimized for multiple email address entry (shows space @ . prominently).
UITextField に対して行ったのと同じ方法で、UITextView の keyboardType を取得できます。
UITextView* textView = [[UITextView alloc] initWithFrame:CGRectMake(0,0,320,30)];
[self.view addSubview:textView];
UIKeyboardType type = textView.keyboardType;
[textView release];
この質問はあなたを助けるでしょう:UITextViewはreloadInputViewsを実装していないようです
UITextViewクラスリファレンスを読んだだけの場合は、キーボードのセクション全体があり、その中に次のテキストがあります。
「キーボード自体の外観は、UITextInputTraitsプロトコルによって提供されるプロパティを使用してカスタマイズできます。テキストビューオブジェクトは、このプロトコルを実装し、それが定義するプロパティをサポートします。これらのプロパティを使用して、キーボードのタイプ(ASCII、数値、URL、表示する電子メールなど)。キーボードの基本的なテキスト入力動作(テキストの自動大文字化や修正をサポートするかどうかなど)を構成することもできます。」
つまり、これはUITextViewがUITextInputTraitsプロトコルを採用していることを意味します。つまり、必要な各メッセージに応答します。メソッドをオーバーライドするには、UITextViewをサブクラス化してから、サブクラスにメソッドを追加して、別のキーボードタイプなどを返す必要があります。
プロパティについては、他のレスポンダーが提案したようにプロパティを設定できます。