android:clickable="true"的怪异的用法

Android Button 属性介绍与使用 由于本文罗列的知识点是根据我自身总结出来的,并且由于本人水平有限,无法全部提及,欢迎大神们能补充~将来我会对上面的知识点一个一个深入学习,也希望有童鞋跟我一起学习,一起进阶。提升架构认知不是一蹴而就的,它离不开刻意学习和思考。**这里,笔者分享一份从架构哲学的层面来剖析的视频及资料分享给大家,**梳理了多年的架构经验,筹备近1个月最新录制的,相信这份视频能给你带来不一样的启发、收获。,第一时间获取最新知识点Android架构师之路很漫长,一起共勉吧! 阅读详情

这个属性,以前在做Android界面UI的时候,出现过两次坑!

(ViewGroup代表LinearLayout等各种布局控件,View代表TestView等各种控件)


1.比如ViewGroup_A在ViewGroup_B之上,点A的时候,B下面如果有button同时会被点击到并触发事件

解决方法:就是在ViewGroup_A的XMl属性下面添加android:clickable="true",反正当时也比较菜,然后当时根本没注意到这么个属性。

(当时比较蠢的做法,我们设定了一个标志位,看见A的时候,设置B不能点。额,这种做法只能说明我们见识太短)


2.TextView的background设置一个selector,点击TextView的时候,背景却没有变化!

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <shape>
            <solid android:color="#40abdc" />

            <corners android:radius="5dp" />
        </shape>
    </item>

    <item>
        <shape>
            <solid android:color="#1298d6" />

            <corners android:radius="5dp" />
        </shape>
    </item>

</selector>


当时自己是这么写的,本来以为TestView可能没这个属性,然后百度了一下,发现有人又在TestView的XML里面添加了一个android:clickable="true",然后就成功了。


目前我遇到这上面两种,难以知道要添加android:clickable="true"的情况,今天第二次遇到,所以把这个写下来。


大神看到了,请补充,谢谢。




Android的clickable与事件分发关系详解 文章目录Android的clickable与事件分发关系详解简介设置影响设置Clickable与onTouchEvent(MotionEvent event)的关系总结 Android的clickable与事件分发关系详解 简介 Android里的View都可以通过clickable设置是否可以点击,对于点击及Android事件分发及处理理解有非常重要的作用。长话短说,开始吧。 设置影响 clickable是用于设置是否允许view的点击事件的配置标识,如果clickable=true那么"pressed" 阅读详情

相关推荐

Android TextView自定义长按菜单:PopupMenu方案详解与实战避坑

在Android应用开发中,UI交互优化是提升用户体验的关键环节。系统原生控件如TextView的默认长按菜单虽然提供了基础功能,但在实际业务场景中往往无法满足定制化需求。通过理解Android事件分发机制和上下文菜单原理,开发者可以灵活扩展交互能力,为特定内容提供精准操作选项,从而显著增强应用的功能性和用户粘性。PopupMenu作为Android官方提供的轻量级解决方案,以其开发效率高、体验一致、兼容性好的特点,成为实现自定义长按菜单的首选技术。在社交、阅读、内容类应用中,自定义长按菜单能够无缝集成“查

weixin_34209851的博客 379

android:clickable="true",java – android:clickable =“true”是不是可以点击?

我有一个ListView,其中有一些自定义的部分。每个部分都有自己的标题视图。我想要列表中的元素是可点击的,但显然不希望节头可点击。所以在xml的部分标题我添加了android:clickable =“false”。调试时,我注意到section标题仍然响应我的setOnItemClickListener()。然后我尝试在XML中设置android:clickable =“true”。而且,标题视...

weixin_33252145的博客 490

Appium UiAutomator2驱动详解:无线自动化测试与并行执行实战

移动端自动化测试是保障应用质量的关键环节,其核心在于通过脚本模拟用户操作,对应用功能进行验证。在Android平台,UiAutomator是Google提供的官方UI测试框架,它允许直接与系统服务交互,实现对应用界面的元素查找与操作。Appium作为流行的跨平台自动化工具,通过集成UiAutomator2驱动,将WebDriver协议与Android底层框架桥接,极大地提升了测试的稳定性和跨平台能力。这一技术组合的价值在于,它使得测试脚本能够以标准化的方式控制Android设备,并支持丰富的扩展命令,从而适

weixin_30635053的博客 348

Android clickable 属性问题

android:clickable属性 在android Button的xml文件属性中有这麽一个属性标签: android:clickable 该标签(继承自View的xml属性)的值必须是boolean值,即true、false。该标签目的是设置button是否可以被点击。 于是,我Demo一把,xml文件如下: <Button android:id="@+id/btn_to" android:clickable="false" andro...

az44yao的专栏 1399

Odyssey交互引擎:为3D内容快速添加可编程交互能力的实践指南

实时交互是数字内容从静态展示走向动态体验的核心技术。其原理在于通过事件驱动架构,将用户输入(如点击、拖拽)与3D物体的状态变化、动画触发等行为进行绑定,实现内容对操作的即时反馈。这项技术的价值在于显著降低了为3D模型、数字孪生等数字资产赋予交互能力的开发门槛与周期,使得非游戏领域的开发者也能高效构建沉浸式应用。在电商3D展示、工业仿真培训、虚拟空间构建等场景中,可编程的交互能力已成为提升用户体验与功能性的关键。本文以Odyssey交互引擎为例,深入解析如何通过配置交互规则与编写行为脚本,标准化交互逻辑的开发

dieqiao8331的博客 376

Activity点击穿透效果

Activity点击穿透效果,可直接点击下一层界面上的按钮,处理相关事件

Android开发中的一些不得不知的坑(一)

做为一个程序猿,写的代码出现bug这是一件无可厚非的事情。但有时候会遇见一种情况,感觉自己写的代码应该是完美的,但一到测试童鞋的那里就出问题了。这里的原因有很多种,思考问题角度不同、操作流程不同、对业务理解不同都会导致这种情况的发生。当然了,程序猿本身代码逻辑不够严谨也是一种情况。 然而,有时候一些简单的代码逻辑也会出错,这可能是由于所使用的编程语言自身的bug(或者说是缺陷吧)所导致。当然,无论

魔法小黑屋 1044

STM32与FreeRTOS:基于TIM6的高精度系统时间获取实践

本文详细介绍了在STM32与FreeRTOS环境下,基于TIM6定时器实现高精度系统时间获取的实践方法。通过复用FreeRTOS的TIM6硬件资源,开发者可以高效获取毫秒级和微秒级系统时间,同时解决时间溢出和中断处理等关键问题。文章还提供了CubeMX配置技巧、代码实现及性能优化建议,适用于嵌入式系统开发中的精确时间管理需求。

weixin_29169505的博客 357

【用案例学Material 3 Expressive】第1课:从一封邮件开始,感受安卓设计新语言的表现力

Material 3以“Material You”为核心,将设计从统一规范转向个性化表达。通过动态颜色、语义化色彩系统与自适应布局,实现界面与用户风格的融合。本文以邮件应用Reply为例,详解其颜色、排版、组件等核心模块的实现,揭示如何用一行代码启用动态配色,让应用真正“像你”。

jackchuanqi的博客 547

FunASR与FreeSWITCH融合实战:从零构建高精度语音质检系统

本文详细介绍了如何将FunASR与FreeSWITCH融合,构建高精度语音质检系统。通过实时语音听写技术,结合热词定制和多模型切换,实现客服中心等场景的自动化质检,显著提升识别准确率和效率。系统架构涵盖音频采集、识别处理和业务应用三层,支持负载均衡和性能优化,适用于工业级部署。

weixin_29198045的博客 980

逆向工程实战:如何用Frida和IDA破解AppleAccount的X-MMe-Nas-Qualify签名机制

本文通过逆向工程实战,详细解析了如何利用Frida动态Hook和IDA静态分析技术,破解AppleAccount服务中关键的X-MMe-Nas-Qualify签名机制。文章从环境搭建、动态追踪NSMutableURLRequest的签名注入点开始,逐步深入到AuthKit框架的静态剖析与算法还原,最终实现独立的签名生成,为安全研究和自动化测试提供了完整的技术路径。

bush的博客 696

设置父控件的事件,需要去掉子控件的android:clickable="true" 属性。

android:clickable="true"

巫巫巫 2943

[记录一个bug]av_hwdevice_ctx_create出现Cannot allocate memory(附带库运行时路径)[已解决]

新写的程序里调用ffmpeg的av_hwdevice_ctx_create()这个函数,出现Cannot allocate memory。但是另个程序一样的代码,居然是成功的。 反复检查之后无果,就跳出去查了一下,看到一个问答: Have you tried to use ffmpg executables with the same libs that you using when you run the app? Have you tried to use ffmpg executables

熊猫Ben的博客 3586

android实现悬浮按钮功能

android用FloatingActionButton实现悬浮按钮可点击,拖拽

qq_68469751的博客 1993

宇树G1开发实践--PPT汇报(基础版)

本文介绍了一套基于宇树G1人形机器人的PPT自动演示系统,可实现"一键启动、自动演讲"功能。系统通过多线程同步技术,将音频播放与机器人动作完美结合,支持12种预设社交互动动作。硬件依赖宇树G1机器人、外接音响和网络连接,软件采用Python SDK和ALSA音频工具。核心功能包括音频文件自动排序、外接音响播放控制、机器人动作执行及音画同步。使用时需配置网络接口和音频设备号,运行后自动按顺序播放音频并执行随机动作。系统特别强调了安全注意事项,并提供了常见问题解决方案,适用于展会、汇报等需要

m0_47999117的博客 510

基于matlab实现的水果识别系统设计

本项目针对多种常见水果混合的图像,利用 Matlab 软件,对水果的识别进行研究。根据水果和背景的差别选取阈值,对去噪增强对比度后的图像进行二值化处理。再对图像进行边缘检测,选定连通区域,标记后再对不同种水果的颜色,形状,大小等特征进行快速识别水果,从而实现对水果的正确分拣。:水果识别、MATLAB、数字图像处理。

热情、奔放、快乐编程! 4854

Android clickable 属性问题

转载:https://blog.youkuaiyun.com/u011630575/article/details/50113927 android:clickable属性 在android Button的xml文件属性中有这麽一个属性标签: android:clickable   该标签(继承自View的xml属性)的值必须是boolean值,即true、false。该标签目的是设置button是...

残风乱了温柔的博客 1万+

【知识图谱】neo4j安装与配置_社区版_2025(附完整安装软件包)

(经历过各种版本NEO4J,遇见杂七杂八的各种问题,也看过非常多很好的教程,特此来分享一下,为大家排排坑。

知识靠谱的博客 2万+

selector的使用,android:clickable="true"

<ImageView android:id="@+id/patrol_buzzer_btn" android:layout_width="80dp" android:layout_height="80dp" ...

878

1、JMP脚本编程全面指南:从基础到高级应用

本博客全面介绍了JMP脚本编程的各个方面,从JMP基础和JSL入门,到数据类型、数据结构、编程方法、数据表操作、图形与三维场景脚本,再到应用程序创建与扩展功能。内容涵盖脚本工具使用、常见任务实现、兼容性说明及未来发展趋势,旨在帮助用户掌握JMP脚本语言的强大功能,提升数据分析的自动化与定制化能力。适合从初学者到高级用户的深入学习与实践参考。

flink9streamer的博客 266

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

textview点击事件 android,Android给TextView添加点击事件的实现方法

首先设定TextView的clickable属性为true。可以在布局文件中进行设定,比如:android:id="@+id/phone"android:clickable="true" --------->设定此属性android:layout_marginLeft="10dp"android:layout_below="@id/address"android:layout_toRight...

weixin_36340926的博客 4805

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

FAQ_07_android:clickable 问题

在android Button的xml文件属性中有这麽一个属性标签:android:clickable该标签(继承自View的xml属性)的值必须是boolean值,即true、false。该标签目的是设置button是否可以被点击。于是,我Demo一把,xml文件如下:<But

CodingMan 1万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

android:clickable= false 无效,依然能被点击

虽然在代码中设置点击事件监听器会改变视图的可点击状态,但是XML文件中的设定有助于定义和理解视图的默认行为和布局的设计意图。:在复杂的视图层次结构中,可能会有一些子视图默认不接受点击事件,因为点击事件被父视图处理了。:对于不需要处理点击事件的视图,将其设置为不可点击可以避免在触摸事件分发过程中进行不必要的点击检查,从而轻微提升性能。:当你创建一个自定义视图或布局,并且默认情况下它不应该响应点击事件时,你可以在XML中明确地将。在某些情况下响应点击事件,即使已经设置了点击监听器,你可以在代码中动态地设置。

iblade的博客 2621

Android中View的点击事件

Android中View的点击事件 使用ConstraintLayout写布局可以减少嵌套,对于有些背景或者点击区域的问题,可以使用View加载背景或者增大点击区域。对于点击事件可以加到View上,并且可以将在View区域内的其它可以点击的View添加上属性android:clickable=“false”。需要注意的是不要在View上添加以下的三个属性: android:clickable="true" android:focusableInTouchMod

cdc的博客 1055

Android中涉及到的焦点问题,focusable,clickable,enabled

先摘抄下stackoverflow上一个启发了我的回答: try by Changing your code as: private OnClickListener saveButtonListener = new OnClickListener() {     @Override     public void onClick(View v) {            

fancychendong的专栏 2万+
上一篇: 做Animation动画,ViewGroup移除ImageView控件报错
下一篇: AIDL学习总结
一休日记
博客等级 码龄11年 43粉丝 91原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一休日记

csdn打赏扣费20点,这

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值