0

ダイアログテーマを使用して、アダプターを使用してListViewを作成しています。

    adapter = new SimpleAdapter(this, test_list, R.layout.list_layout2, from, to);
    lv=(ListView)findViewById(R.id.listView1);

次に、いくつかのリスナーを追加しようとしていますが、実行中のアプリでトリガーされません。

    onclick =new OnItemClickListener(){

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // TODO Auto-generated method stub
            Log.d("item",arg2 + "");
        }

    };

    onlongclick = new OnItemLongClickListener(){


        @Override
        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            // TODO Auto-generated method stub
            Log.d("longitem",arg2 + "");
            return false;
        }

    };

    lv.setOnItemClickListener(onclick);

    lv.setOnItemLongClickListener(onlongclick);

誰かが物事を正しく実行するための提案がありますか?

4

3 に答える 3

0

正しいようですが、私が理解していないのは、なぜリスナーの変数を作成するのかということです。あなたはそれらを設定することができます。

こちらのリンクをチェックしてください:

http://www.ezzylearning.com/tutorial.aspx?tid=1351248

SimpleAdapterの代わりにArrayAdapterを使用し、パラメーターの1つはアイテムです。

それはあなたを助けるかもしれません。

于 2012-09-21T17:37:02.217 に答える
0

さて、私は答えを見つけました。私のアイテムレイアウトでは、「R.layout.list_layout2」はTextViewでした

android:focusable="true"
android:focusableInTouchMode="true"

これを削除すると、OnItemClickListenerが安定して動作するようになりました。

于 2012-09-21T23:37:46.557 に答える
0

私はあなたの問題を解決するのに役立つかもしれないチュートリアルを見つけました

ここをチェックしてください

http://www.androidbegin.com/tutorial/android-simple-listview-tutorial/

于 2012-09-22T03:03:04.273 に答える