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

它使用 ArrayAdapter 而不是 SimpleAdapter,其中一个参数是项目。

它可能会帮助你。

于 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

I've found tutorial that might help you with your problem

Check out here

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

于 2012-09-22T03:03:04.273 回答