Подтвердить что ты не робот

AutoCompleteTextView onItemSelectedListener не работает

У меня есть AutoCompleteTextView и установить на него onItemSelectedListener, который не работает.

Ты хоть представляешь в чем проблема? Вот моя активность, я также могу предоставить файл main.xml, если это необходимо.

   package com.chidem;

    import android.app.Activity;
    import android.app.AlertDialog;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemSelectedListener;
    import android.widget.ArrayAdapter;
    import android.widget.AutoCompleteTextView;

    public class ChidemActivity extends Activity implements OnItemSelectedListener{
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            String hop[]=new String[]{
                    "Karen","Mika","Gevor"
            };

            AutoCompleteTextView searchHotels = (AutoCompleteTextView) findViewById(R.id.autoSearch);
            searchHotels.setOnItemSelectedListener(this);

            ArrayAdapter<String> adapter1 = new ArrayAdapter<String>( this, R.layout.list_item, hop);
            searchHotels.setAdapter(adapter1);

        }


        public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            Log.d("autocomplete", "itemselected");

        }

        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub

        }
    }
4b9b3361

Ответ 1

Чувак, ты будешь смеяться над своей ошибкой. Он работает на меня. Вы добавили OnItemSelectedListener, а не OnItemClickListener.

Ваш метод будет работать только в том случае, если вы выберете свои предметы или просмотрите представление с помощью трекбола или стрелок вверх/вниз. Используйте еще одно значение в своей строке, начиная с "k", скажем, Karen1. Введите "k" и выберите между Карен и Карен. Вы увидите, что он работает. Если вы хотите щелкнуть, добавьте OnItemClickListener и переопределите

public void onItemClick(AdapterView<?> arg0, View arg1,
                        int arg2, long arg3)

Ответ 2

Вы должны использовать

OnItemClickListener

вместо OnItemSelectedListener

Ответ 3

не забудьте android:clickable="true" для AutoCompleteTextView, если это было false