1

Androidアプリにカスタムバリデーターを実装するのに苦労しています。AutoCompleteTextViewのテキストの同じ文字で始まっていなくても、サーバーから取得したいくつかの提案(正しく機能します)をリストビューに表示したいと思います。

つまり、「n」と書くと、サーバーの応答を取得したいのですが、これは「r」です。isValidそこで、サーバーの応答が空でないかどうかを制御するサンプルを設定するバリデーターを実装しようとしました。

ここに私のコードを示します:

autoCompleteTextView.setAdapter(adapter);
autoCompleteTextView.setValidator(new Validator());
autoCompleteTextView.performValidation();

そしてここでバリデータークラス:

クラスValidatorはAutoCompleteTextView.Validatorを実装します{

public boolean isValid(CharSequence text) {
    Log.v("Test", "Checking if valid: ");
    int i = 0;


    if (!MainActivity.interventos.isEmpty()) {
                return true;

    }

    return false;
}

public CharSequence fixText(CharSequence arg0) {
    // TODO Auto-generated method stub
    return null;
}

isValid()は常にFalseを返しますが、MainActivity.interventosは空ではないため、Trueを返す必要があります。

追伸:サーバーがAutocompleteTextViewと同じ文字で始まる単語で応答する場合、メソッド全体が適切に機能します。

提案?前もって感謝します

4

1 に答える 1

1

CustomArrayAdapterを使用して解決した同様の問題がありました。viewHolderはサーバーからデータを取得するためのフィルターを実装しています。したがって、必要なデータをオートコンプリートリストに表示できます。したがって、バリデーターは有用ではなく、必要ありません。楽しんで、私を維持してください!

于 2012-09-19T16:35:58.603 に答える