0

ユーザーがさまざまなパラメーターを構成できるように、Android アプリケーションに PreferenceActivity があります。それらのいくつかは、EditTextPreferences に入力された数値です。代わりに ListPreferences を使用して、入力を強制的に数値にすることもできますが、許容値の範囲が大きすぎて便利ではありません。

したがって、可能な限りユーザーを証明するために、さまざまなエントリを検証するコードを追加したいと思います。EditTexts にアタッチされた setOnFocusChangeListener を使用して、Tab アクティビティ内のいくつかの EditText の内容をチェックするアプリの他の場所に非常によく似たコードがあります。

dataField.setOnFocusChangeListener (new DataFieldFocusChangeListener());

これは魅力のように機能します。

残念ながら、私の PreferenceActivity 内の EditTextPreference 内の EditText のフォーカス変更リスナーが呼び出されることはないようです。この状況に適したリスナーを提案できる人はいますか?

4

1 に答える 1

1

次のリスナーを使用して試すことができます:-

yourEditText.addTextChangedListener(new TextWatcher() {

    @Override
    public void afterTextChanged(Editable s) {
        // TODO Auto-generated method stub

    }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onTextChanged(final CharSequence s, int start, int before, int count) {

        // Perform validation here

    }

});
于 2013-07-17T18:16:12.260 に答える