【问题标题】:android list view clickable problemandroid列表视图可点击问题
【发布时间】:2010-11-30 17:30:02
【问题描述】:

我有这个自定义列表。每行包含一个图像和两行文本,一个在另一个之下。单击任何列表项时,我想打开一个新活动。但即使在实现 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();


    }
   });

【问题讨论】:

    标签: android listview listviewitem android-listview


    【解决方案1】:

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

    【讨论】:

    • 我试过这样做,holder.firstLine.setFocusable(false); holder.secondLine.setFocusable(false); holder.imageView.setFocusable(false);但它仍然不起作用。 firstLine、secondLine 和 imageView 存在于每一行布局中。
    【解决方案2】:

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

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

    问题描述here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-22
      • 2012-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多