inputType=numberDecimal で EditText を使用すると、奇妙な動作だと思います。
Galaxy Nexus (Google キーボードを使用) で editText フィールドをタップすると、下線が表示されることがよくあります。
オートコレクト、オートコンプリート、またはテキストの提案のように見えますが、numberDecimal 入力タイプには意味がありません。私は textNoSuggestions を試しましたが、予想通り、これは下線を削除しませんでした。
存在する場合、これらの下線が現在問題を引き起こしています。editText のリスナーとして textwatcher をアタッチしています。フィールドをタップすると、この下線が表示され、カーソルがスクリーンショットのように配置されます。
ユーザーが 2 を入力すると、onTextChanged は 0.002 を受け取ります。正解です。次に、afterTextChanged でこの数値を 0.02 にフォーマットします。
この時点でユーザーが 3 を入力すると、onTextChanged は 0.020023 を受け取ります。これは正しくありません。何らかの理由で、「002」が editText 値の 3 の前に追加されています。
私の textwatcher ロジックは長い間機能しており、最近になってこの問題が発生し始めました。カーソルを移動して下線を消すと、onTextChanged が「正しくない」値を受け取ることに問題はありません。
この下線が発生するようになった原因に関する限り、私はそれを Google キーボード アプリに絞り込んだと思います。Google キーボード バージョン 1.1.1881.801980 を使用すると、この問題が発生します。アップデートをアンインストールし、バージョン 4.2.2-573038 にロールバックしましたが、そのバージョンでは下線が表示されないため、textwatcher に問題はありません。
だから、私の質問:
この下線が numberDecimal フィールドにあるはずのものを知っている人はいますか? それは合法ですか、それともバグですか?
バグであろうとなかろうと、ユーザーがフィールドをタップしたときにこの下線が表示されないようにする方法を知っている人はいますか?