【问题标题】:android - Custom listview item select [duplicate]android - 自定义列表视图项目选择[重复]
【发布时间】:2015-01-22 12:35:48
【问题描述】:

我有一个列表视图,每一行都有一个带有文本视图和相邻图像视图的线性布局。 我已经能够使用我想要的功能实现 setOnItemClickListener(),当单击一行时会触发它,但我希望在单击该行中的图像视图时调用它。有什么想法吗?

【问题讨论】:

  • 通过调用图像视图而不是行上的集合,将侦听器附加到图像视图而不是行。
  • 你可以在getview()中的imageview上添加一个onclick监听器。

标签: android android-layout


【解决方案1】:

您可以在自定义生成的视图项上设置点击监听器

将此代码放入您的自定义 xml imageview 文件中。

android:focusable="false"
android:descendantFocusability="blocksDescendants"

并在 imageview 上设置 onClicklistner

您还可以阅读: Android : How to set onClick event for Button in List item of ListView

【讨论】:

    【解决方案2】:

    如果你想在行布局中添加列表视图行项单击和图像视图的单击事件,请在行布局的根视图中使用android:descendantFocusability=“blocksDescendants”

    如果你使用 BaseAdapter** 应用在 BaseAdapter 的 getView 方法中创建的 imageview 实例的点击事件

    【讨论】:

      【解决方案3】:

      对于这种情况,您可以将单击侦听器添加到在 BaseAdapter 的 getView 方法中创建的 imageview 实例。如果您正在关注 HolderPattern,则下面是示例代码

         holder.image.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
      
              }
          });
      

      您还必须在列表行的父布局中添加以下行:

      android:descendantFocusability=“blocksDescendants”
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-16
        • 2013-10-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多