`
Darar
  • 浏览: 87794 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

listview 点击列表项时,项中的Button会触发点击效果

 
阅读更多
开发中,难免会在列表项中, 加入Button ,而button通常都有点击的效果。大家都会发现,点击列表项时,button会被触发点击效果,这样显示不合理。如何解决此问题呢。
其实发生这个现象的问题,是点击父类列表项时,会把响应传递给子类。只要子类不去响应父类的点击事件就行。

这里重写一个Button类。

package com.netqin.antivirus.securityreport;

import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.Button;

/**
 * Created with IntelliJ IDEA.
 * User: zhengdianfang
 * Date: 13-6-5
 * Time: 下午7:13
 */
public class SecurityReportItemButton extends Button{
    public SecurityReportItemButton(Context context) {
        super(context);
    }

    public SecurityReportItemButton(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public SecurityReportItemButton(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    @Override
    public void setPressed(boolean pressed) {
        if (pressed && getParent() instanceof View
                && ((View) getParent()).isPressed()) {
            return;
        }
        super.setPressed(pressed);
    }
}

分享到:
评论

相关推荐

    listView上增加button点击事件

    现在问题来了,当用户点击Button时,ListView的点击事件也可能被触发,导致事件冲突。为了解决这个问题,我们需要阻止事件冒泡。在Button的点击监听器中,我们可以调用`View#setClickable(false)`或`View#setEnabled...

    android listview 列表 点击列表进入详细页面

    当用户点击列表项时,会触发onItemClick()方法。 ```java listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int...

    ListView和Button点击事件冲突处理

    当这两种控件结合使用时,有时会出现点击事件的冲突问题,导致按钮的点击事件无法正常触发或者ListView的条目点击事件失效。本篇文章将详细探讨这个问题,并提供解决方案。 首先,我们要理解为何会出现ListView与...

    动态的向布局中添加布局控件实现ListView效果列表项效果

    我们还可以为ListView添加点击事件监听,通过`setOnItemClickListener()`方法,这样当用户点击列表项时,可以触发相应的处理逻辑。 在描述中提到的博客链接可能包含了具体的实现细节,如如何创建Adapter,如何在`...

    ListView的Button点击更改Button本身背景

    当我们需要在ListView的每一项中包含一个Button,并实现点击Button时改变Button自身的背景,这就涉及到自定义Adapter、事件监听以及对View状态的理解。 首先,我们需要创建一个自定义的Adapter,因为ListView默认的...

    ListView中点击对应item的Button时改变其文字和图片

    在这个例子中,当我们点击ListView中的任意一个Item的Button时,Button的文字会变为“已点击”,背景颜色会更改为系统默认的强调色。这个功能通过在Adapter的getView()方法中为每个Button设置点击监听器来实现。 在...

    ListView和BaseAdapter搭配Button点击事件获取不同Item

    在这个场景中,我们要讨论的重点是如何在ListView中的每个Item(即列表项)上添加Button,并处理这些Button的点击事件,以便根据点击的Button获取对应的Item信息。 首先,理解ListView的工作原理至关重要。ListView...

    ListView的基本使用带Button

    本教程将详细讲解如何在ListView中结合Button进行基本使用,以及如何实现ListView中的Button点击事件。 首先,我们需要在布局文件中创建ListView。在XML布局中,我们可以这样定义一个ListView: ```xml <ListView ...

    点击button动态加载listView

    动态加载ListView是指在用户触发特定事件(如点击Button)时,程序按需加载数据到ListView中,而不是一次性加载所有数据,这样可以提高应用的性能和用户体验。本文将详细讲解如何实现“点击button动态加载listView”...

    Android listview和button点击事件冲突问题解决方法

    这种问题通常表现为点击ListView项时,Button也会同时触发点击效果,导致用户体验下降。本文将详细介绍如何解决Android listview和button点击事件冲突。 首先,我们要理解这个问题的根本原因。当在ListView的Item...

    ListView和Button的结合使用

    ListView用于展示大量的数据列表,而Button则作为用户交互的入口,通常用于触发特定的功能。本文将详细介绍如何在Android应用中将ListView与Button结合使用,以及如何处理它们的点击事件,实现不同的操作。 首先,...

    ListView中嵌入Button ,ListView的item与Button的click事件分别被响应,同时还实现了类似Digg的item点击效果

    此外,我们还将实现一种类似Digg网站的点击效果,即当用户点击item时,其视觉表现会发生变化。 首先,我们需要创建一个自定义的ListView适配器。这个适配器通常继承自`BaseAdapter`,并重写其中的`getView()`方法。...

    ListView中添加Button点击事件并改变状态

    而在这个场景中,我们讨论的是如何在ListView的每一项中添加Button,并为这个Button设置点击事件,以便在用户点击时能响应并改变Button的状态。下面将详细阐述实现这一功能的关键步骤和涉及的技术点。 首先,我们...

    045集-ListView列表项点击事件

    本教程“045集-ListView列表项点击事件”深入讲解了如何处理ListView中的条目点击事件,这对于构建交互式的Android应用至关重要。在本教程中,我们将探讨以下几个关键知识点: 1. **ListView的基本使用**:首先,你...

    Listview中的Button实现点击事件

    3. **传递接口**:将父组件作为参数传递给ListView的Adapter,在Adapter中,当Button被点击时,调用这个接口的方法,从而触发父组件的回调。 代码示例: ```java public interface OnItemClickListener { void ...

    实现listview监听button

    然而,当列表项中包含交互元素,如Button时,我们需要实现对这些元素的点击事件监听。本篇将详细介绍如何在ListView中监听Button的点击事件,并提供两种实现方法。 ### 方法一:使用Adapter的getView()方法 1. **...

    动态添加、删除ListView列表项

    可以在Adapter中设置点击监听器,以便在用户点击列表项时执行相应的操作。例如,通过实现`OnClickListener`接口,并在`getView()`方法中设置。 7. **文件ch05_dynamiclistview**: 这个压缩包文件可能包含了一个...

    ListView点击展开与隐藏

    当用户点击列表项时,会触发适配器中的`getView()`方法,根据当前状态决定返回哪种视图。 接着,我们需要为ListView项设置OnClickListener监听器。在点击事件中,可以通过记录当前展开的项的索引来控制哪个项应该...

    Android Listview 列表项删除动画Demo

    本示例"Android Listview 列表项删除动画Demo"旨在演示如何在ListView中实现一个动态效果:当用户选择删除某个列表项时,该条目会有一个从右向左滑动的动画效果,同时,下面的列表项会平滑地填补被删除项留下的空缺...

    android listview item背景色点击效果实例

    这样,当用户点击ListView的item时,系统会自动根据item的状态改变其背景颜色,提供良好的交互体验。 在提供的"ListTest"压缩包中,可能包含了实现这一功能的代码示例,包括自定义Adapter的Java文件、item布局的XML...

Global site tag (gtag.js) - Google Analytics