0

ListView に検索機能を追加する際に問題が発生しています。ユーザーが ListView のクリック可能な望ましいアイテムを検索できるようにしたいと考えています。クリック可能な実装なしで検索 ListView を既に作成しています。EditText と TextChangedListener を使用して検索を追加しようとしました。これは通常の ListView では正常に機能しますが、リストビューの項目をクリックしても何も起こりません..リストビュー (フェラーリなど) の各行にインテントを追加する必要があることはわかっていますが、インテントを実装するにはどうすればよいですか? 何か案は

public class Main extends Activity {

private ListView lv;


ArrayAdapter<String> adapter;


EditText inputSearch;


ArrayList<HashMap<String, String>> modelist;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);


    String modeller[] = {"Ferrari","Renault","Porche",};

    lv = (ListView) findViewById(R.id.list_view);
    inputSearch = (EditText) findViewById(R.id.inputSearch);

    adapter = new ArrayAdapter<String>(this, R.layout.list_item, R.id.model_ismi, modeller);
    lv.setAdapter(adapter);

    inputSearch.addTextChangedListener(new TextWatcher() {

        @Override
        public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {

            Main.this.adapter.getFilter().filter(cs);
        }

        @Override
        public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
                int arg3) {


        }

        @Override
        public void afterTextChanged(Editable arg0) {

        }
    });
}
4

1 に答える 1

1

これを試して :

lv.setOnItemClickListener(new OnItemClickListener(){ 
            @Override
            public void onItemClick(AdapterView<?> parent, View view,int position, long _id){
                switch(position){
                    case 0: // "Ferrari"
                        Intent intent_ferrari=new Intent(Main .this,Ferrari.class);
                        startActivity(intent_ferrari);
                        break;
                    case 1: // "Renault"
                        break;
                    case 2: // "Porche"
                        break;
                    default:
                        break;
                }
            }
});
于 2013-01-25T18:17:05.627 に答える