1

これを尋ねると、ほとんどの人にはばかげているように聞こえるかもしれませんが、私は自分でそれを理解することができず、答えが見つかるまで次のタスクに進むことができません. これまでのところ、Fedor によって作成されたhttps://github.com/thest1/LazyListから LazyList プロジェクトをダウンロードしました。自分のプロジェクトに実装できるように、その仕組みを理解しようとしています。私の問題は、onitemclicklistener 部分を実装する場所がわからないことです。

AdapterView.OnItemClickListener onitemClick = new AdapterView.OnItemClickListener()public   void onItemClick(AdapterView<?> parent, View view, int position,
            long id) {
noteId= //the item id from the list
Toast.makeText(getApplicationContext(), noteId, 2000).show();
}

mainActivity に追加しようとしましたが、LazyAdapter に接続してトーストに表示されるアイテム ID を見つける方法が見つかりません。私のプロジェクトには、リストに他の情報が含まれているため (テーブルのいくつかの列として)、項目 ID を使用してその行から特定の列にアクセスできるようにしたいと考えています。簡単なトーストでテストすると役立ちます。ありがとうございます

4

1 に答える 1

1

私はあなたが間違った方法でそれを行っていると思います:AdapterView.OnItemClickListenerはインターフェースであり、onItemClick()メソッドは4つのパラメーターを取ります...私はこれがあなたがやろうとしていることだと思います:

ListView listView = (ListView) findViewById(R.id.list);
listView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Toast.makeText(getApplicationContext(), id + "", 2000).show();
    }
});
于 2012-09-20T22:24:52.530 に答える