EditTextに機能を追加して、レイアウトxmlに新しく拡張したフィールドを含めると、 Activityクラスにコードを追加して、特定の方法で動作させるようにします。EditTextを拡張して「デフォルト」機能を追加する正しい方法
たとえば、EditPhoneフィールドは、キーイベントをリッスンし、括弧と適切な場所にダッシュを含むようにフィールドを変更する追加機能を持つEditTextです。
現在のところ、私はいつもリスナーコードを含めてビューに手動で添付する必要があります。しかし明らかに、クラスには、それにラップされた大量のデフォルト動作があります(たとえば、クリックするとキーボードが表示されます)。だから、私はそれが厳しいものではないはずだと思っていますが、これを達成するための措置が何であるかについては明確ではありません。
また、上記のPhone固有の機能(私はすべて機能しています)には助けが必要ではありません。私は、Viewを拡張する方法を理解するために、追加の機能デフォルトでは、同じコードを何度も繰り返す必要がありません。
私はinitメソッドにonkeyリスナーを追加しますか? –
必要な場合:はい。しかし、テキスト入力の制限は入力フィルタによって適用されます。しかし、あなたは 'init'で必要なものを設定し、変更することができます。 – Knickedi
はい、私は入力フィルタを調べて、それが私の問題に当てはまるかどうかを確認する必要がありますが、あなたがやっていることを見ていて、あなたが正しいと思う...かなり簡単です:) –