ユーザーがHTMLページのテキスト入力フィールドをタップしたときに表示されるソフトキーボードレイアウト(数字のみが必要)を指定する方法はありますか?
HTMLページとJavacodeを変更できます(WebViewを埋め込むアクティビティがあります)。ただし、HTMLコードを変更しても、他のプラットフォームに影響を与えることはありません(別のブラウザー/デバイスは、入力フィールドを正しく解釈し、必ずしも数字のみのキーボードではなく、ソフトキーボードを表示する必要があります)
ユーザーがHTMLページのテキスト入力フィールドをタップしたときに表示されるソフトキーボードレイアウト(数字のみが必要)を指定する方法はありますか?
HTMLページとJavacodeを変更できます(WebViewを埋め込むアクティビティがあります)。ただし、HTMLコードを変更しても、他のプラットフォームに影響を与えることはありません(別のブラウザー/デバイスは、入力フィールドを正しく解釈し、必ずしも数字のみのキーボードではなく、ソフトキーボードを表示する必要があります)
私はこれを試しませんでしたが、理論的にはうまくいくはずです:
タグにHTML5type
属性を使用し<input>
て、フィールドが数値のみを受け入れることを宣言します。これにより、ブラウザに数字キーボードを表示するためのヒントが与えられます。これを Android デバイスでのみ有効にするには、いくつかの Android 固有の Javascript を発行することを検討してください (これは、ユーザー エージェントを介してクライアントでプラットフォーム検出を行うか、代わりに Android デバイスを検出した場合にのみサーバーによって送信される可能性があります。ユーザー エージェント ヘッダーを使用して)、すべての入力要素 (特別なクラスでマークされている可能性があります) を走査し、 を に設定type
しnumber
ます。
デバイスや OS のバージョンによって動作が異なるようです。基本的に、デバイスで実行される WebKit のバージョンに依存します。それらのタグをサポートしている場合は機能しますが、サポートしていない場合はそのタグを無視します。
2.3.4 では、My Nexus S で、type = number と入力するとテンキーが表示されます。
入力タグに ' pattern="[0-9]*" ' を追加することも確認しました。試す:
<input type="number" size="4" maxlength="4" pattern="[0-9]*" ></input>