android列表视图可点击问题

时间:2010-11-30 17:30:02

标签: android listview listviewitem android-listview

我有这个自定义列表。每行包含一个图像和两行文本,一行在另一行之下。我想在点击任何列表项时打开一个新活动。但即使在实现setOnItemClickListener()之后,我也无法这样做。如果我错了,请纠正我。以下是列表的代码。 PS:这是一项正常活动而非列表活动。

l1.setAdapter(new EfficientAdapter(this,eventTitleArray,eventDateArray,eventImageLinkArray));
   //l1 = getListView();
   l1.setClickable(true);
   l1.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1,
      int position, long arg3) {
     Intent intent = new Intent(MainActivity.this, DisplayActivity.class);
     Bundle b = new Bundle();
     b.putString("event", eventTitleArray[position]);
     intent.putExtras(bundle);
     startActivity(intent);

     Toast.makeText(getApplicationContext(), "Opening detailed view for:"+eventTitleArray[position], Toast.LENGTH_SHORT).show();


    }
   });

2 个答案:

答案 0 :(得分:13)

请查看行布局是否包含任何可聚焦的项目。如果ListView项包含可聚焦的子项,则不会触发Listview处理程序。

答案 1 :(得分:2)

我认为SDK中存在一个错误,当您的项目视图中存在可聚焦视图时,该错误会阻止onItemClickListeners触发。

因此,您应该尝试对项目的所有视图执行setFocusable(false)。

问题描述为here