修改Button、TextView选中变化状态

Floating Action Button底层原理与实战避坑指南 Floating Action Button(FAB)是Material Design中定义的高优先级操作入口,其‘浮动’本质并非视觉特效,而是依托CoordinatorLayout实现的布局契约与行为协调机制。它通过Behavior类响应Snackbar推升、RecyclerView滚动等状态变化,依赖严格的依赖声明、事件监听与偏移计算链路。FAB的尺寸(56dp/40dp)、阴影、触摸目标(≥48×48dp)、无障碍支持(contentDescription)及夜间模式适配均需符合工程化规范。实际开发中 阅读详情

一、修改Button按钮选中状态

1.在res\values\colors.xml文件中添加如下内容:

<resources> 
   <drawable name="white">#ffffff</drawable>
   <drawable name="black">#000000</drawable>
</resources>

注意:节点一定是drawable,不是color

2. 在res\drawable\下新建一个名为btn_selector.xml的文件,内容如下:

1	<?xml version="1.0" encoding="UTF-8"?>
2	<selector xmlns:android="http://schemas.android.com/apk/res/android">
3	    <item android:state_selected="true" android:color="@drawable/white" />
4	    <item android:state_pressed="true" android:color="@drawable/white" />
5	    <item android:color="@drawable/black"/>
6	</selector>

3.给button设置颜色,内容如下:

 <Button
     android:text="按钮"
     android:textColor="@drawable/btn_selector"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"/>

这样你的按钮不光背景可以变化,颜色也可以变化

二、修改TextView文本选中状态

1.在res\values\colors.xml文件中添加如下内容:

 <color name="blue">#3f9ddf</color>

2.在res\drawable\下新建一个名为corner_blue_d25.xml的文件,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners
        android:radius="@dimen/d25"/>
    <solid android:color="@color/blue"/>
</shape>

3.在相同目录下新建另一个文件tv_enable_select.xml,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/corners_blue_d25" android:state_pressed="true" />
    <item android:drawable="@drawable/corners_gray_d25" android:state_pressed="false" />
</selector>

 

4.给TextView设置背景,内容如下:

    <TextView
         android:text="文本"
         android:background="@drawable/tv_enable_select"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"/>

三、还可以通过监听器设置变化状态:

btn.setOnTouchListener(buttonListener);

private OnTouchListener buttonListener = new OnTouchListener() {
 public boolean onTouch(View arg0, MotionEvent event) {
  // TODO Auto-generated method stub
  int action = event.getAction();
  if (action == MotionEvent.ACTION_DOWN) { // 按下
  
   } else if (action == MotionEvent.ACTION_UP) { // 松开   
  
  }
   return false; 
  }  
};

里面写上自己的逻辑即可,大功告成!

Android通过textview设置状态 通过textview设置状态选择 立即下载

相关推荐

保姆级教程:用GROMACS的FEP方法计算小分子结合自由能(附完整mdp配置)

本文提供了一份详细的GROMACS自由能微扰(FEP)计算教程,涵盖从系统准备、参数配置到结果分析的全流程。通过具体案例演示如何计算小分子结合自由能,包括λ窗口设计、动力学参数优化及并行化执行技巧,帮助研究者克服FEP计算中的常见问题,获得可靠的自由能数据。

weixin_30598225的博客 352

给textview设置选中的状态(特殊)

1 注意不能用state_select 不会起作用的 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="false" android:drawable="@drawa

zhiqiang_zhao 1万+

手把手教你用RSoft BPM仿真一个1x2光分束器:从参数设置到结果分析全记录

本文详细介绍了使用RSoft BPM模块设计和仿真1×2光分束器的完整流程,包括参数设置、结构建模、仿真配置和结果分析。通过实战指南,帮助读者掌握光波导器件的仿真技术,实现50:50功率分配的设计目标,适用于光通信和集成光学领域的研究与应用。

weixin_30545945的博客 544

安卓设置按钮选中状态

1.创建正常状态的drawable文件(以删除按钮为例) 创建正常状态的xml文件,起名为delete_btn_normal &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;shape xmlns:android="http://schemas.android.com/apk/res/android"&gt; &lt;corners ...

weixin_39339407的博客 1万+

国产数据库迁移必看:达梦到ES的CDC方案优化全记录(含完整代码)

本文详细记录了从达梦数据库到Elasticsearch的CDC方案优化全过程,涵盖触发器方案局限性、Debezium架构优势及完整代码实现。通过Flink集成和性能调优,实现毫秒级延迟同步,显著降低数据库负载,为国产数据库迁移提供可落地的技术方案。

weixin_29079671的博客 497

Ubuntu配置Qt Creator树莓派交叉编译环境一步到位

本文详细指导在Ubuntu系统上配置Qt Creator树莓派交叉编译环境。从工具链安装、sysroot创建到Qt库编译,逐步讲解如何搭建完整的ARMv7交叉编译工具链,实现高效开发树莓派应用。

1272

Android CheckedTextView 使用+实例

CheckedTextView是什么 CheckedTextView继承自TextView且实现了Checkable接口,对TextView界面和显示进行了扩展的控件,支持Checkable。可以实现单选或多选功能,在你懒得使用两者结合的时候,这就是不二选择。 主要XML属性如下 android:checkMark 按钮样式。 默认单选框样式:android:checkMark="?android:attr/listChoiceIndicatorSingle" 默认复选框样式:andr

帅次的博客 5316

ABAP CDS 视图参数 parameter_list 详解与最佳实践:从语法、作用域到可运行范例

本文系统梳理了ABAP CDS视图的WITH PARAMETERS定义与使用。主要内容包括:1)参数声明语法及其在整条SELECT语句中的贯穿使用;2)参数在WHERE/HAVING/ON等位置的多种写法(:pname和$parameters.pname);3)参数在航空公司航线筛选等实际业务场景中的应用;4)参数与会话变量的协作策略;5)在JOIN ON、HAVING、CASE等高级用法中的实践;6)提供完整的CDS视图与ABAP程序示例,展示参数声明、使用及Open SQL传参方式。所有内容均基于SAP

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 371

记录安卓基础控件的相关属性和常用功能(一)--TextView、Button

目录 TextView Button TextView TextView的基础属性 layout_width:组件的宽度 layout_height:组件的高度 id:为TextView设置一个组件id text:设置显示的文本内容 textColor:设置字体颜色 ...

qq_50272406的博客 928

PyTorch深度学习实战(29)——变分自编码器(Variational Autoencoder, VAE)

变分自编码器 (Variational Autoencoder, VAE) 是一种结合了自编码器和概率建模的生成模型,通过编码器将输入数据映射到潜在空间中的概率分布,并通过解码器将从潜在空间采样得到的潜在变量映射回原始数据空间,实现了数据的生成和特征学习。

盼小辉丶的博客 1万+

一文速览:大模型语料构建与基础训练全流程实战指南

因为模型只有看到足够丰富、高质量的数据,才能真正学到“真本事”,展现出更强大的泛化能力,也就是能够在全新的场景和任务下,做出准确的推理和判断。我们日常做饭的时候,通常会先把买回来的菜仔细清洗干净,把坏掉的叶子、泥土、杂质等去除掉。同理,训练大模型的数据就像我们的食材,如果不干净,就会影响模型的学习效果,甚至训练出逻辑紊乱的模型。在大模型的世界里,有一句名言:“Garbage in, Garbage out”,翻译过来就是“垃圾输入,垃圾输出”,说白了,就是给模型喂的是什么数据,它学到的就是什么知识。

master_hunter的博客 1667

android使用selector修改TextView中的字体颜色和背景颜色

android中的selector大家都很熟悉了,用它可以很方便的实现,控件在不同的动作中,颜色等值的变化。这里我说一下TextView中的一些应用。        我想大家都知道,Button按钮在源码上看是一种特殊的TextView,所以我们很多时候,按钮全是使用的TextView来完成,只要加一个android:clickable="true"就可以了。        TextView在

我本无名的专栏 3万+

【ROS机器人系统】自主导航+YOLO目标检测+语音播报

完成自主导航功能,并在小车移动至指定地点的过程中,通过机器人的摄像头检测导航途中所见物体,识别出物体的种类(框选出不同物体并标注识别结果),结合科大讯飞语音合成模块对识别结果进行语音播报。..............................

南京大学软件工程硕士在读 2万+

Android button原理 转载

在Android中Button是非常常用的一个View控件, 原本以为Button实现的代码肯定很多,但是看了原来着实吃了一惊.Button的源码几乎仅仅对继承的TextView类做了一个小小的修改, 仅仅是加了一个Style. 一个Style就能够实现Button的显示效果样式么?Android的Style机制真的很强大.首先来看一下ButtonView的实现代码:* XML attri

铁锹在手,天下我有 3654

IMSL CNL 7.0.0 (x86-64)Crack

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

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

修改Button按钮

效果图: Button_selectorActivity.java package com.hlx.demo; import android.app.Activity; import android.os.Bundle; public class Button_selectorActivity extends Activity { @Override public vo

a1220694903的专栏 731

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

TabLayout实现每个tab有一个不同的图片,选中改变图片

如图: 想要实现如上的方法,很简单:自定义tab,背景选择器如下: 1、每个tab里面的图片的布局,使用textview,注意不能用button,也不能设置textview的clickable=”true”,否则tablayout就不能选择了<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

qq_18148011的博客 1万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

android toast button,Android编程基础之简单Button事件响应综合提示控件Toast应用示例...

本文实例讲述了android简单button事件响应综合提示控件toast应用。分享给大家供大家参考,具体如下:前面讲述了在main.xml里定义了button对象,这里我们来学习button如何实现事件响应。button按钮所触发的事件处理,我们称之为event handle,只不过在android当中,按钮事件是由系统的button.onclicklistener所控制,熟悉java程序设计的...

weixin_42546392的博客 216

android 字体大小不变,TextView设置文字大小后View的高度变化有关问题

Java codepublic class TestActivity extends Activity {TextView tvTest;Button btnChangeSize;Button btnChangeText;boolean sizeChanged;boolean textChanged;/** Called when the activity is first created. */...

weixin_30824391的博客 601

TextView selector 在LinearLayout中获取焦点问题

通常需要修改textview被选中时文字颜色,总是没效果,有以下几种方式可以实现: xml version="1.0" encoding="utf-8"?> selector xmlns:android="http://schemas.android.com/apk/res/android"> item android:state_pressed="true" android:

Fenice 2345

android 点击button或者textview背景和字体变色

直接上代码,这是背景变色 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true"> <shape ...

lixuanjin43的博客 1387

Android TextView深度解析:从基础属性到性能优化的全面指南

在Android应用开发中,UI控件的设计与优化是构建高质量应用界面的核心环节。TextView作为最基础且使用频率最高的文本展示控件,其看似简单的属性设置背后,蕴含着影响用户体验和性能表现的关键原理。理解TextView的内容管理、字体适配、颜色系统与背景定制,不仅能提升界面的视觉层次和可读性,更是实现应用国际化、深色主题适配等现代需求的工程基础。通过合理运用SpannableString实现富文本、采用sp单位进行字体缩放、以及利用资源文件管理颜色与字符串,开发者可以构建出既美观又健壮的文本展示组件。特

weixin_30386713的博客 486

android自定义控件,动态设置Button的样式

原文 http://www.cnblogs.com/landptf/p/4562203.html 今天来看一个通过重写Button来动态实现一些效果,如圆角矩形、圆形、按下改变字体,改变背景色,改变背景图等 在此说明一下,这种实现方式绝对不是唯一的,而且通过xml文件即可简单实现,这样做只是为了将控件的样式完全由代码实现,更方便打包应用于其他项目 下面来看几张效果图:...

weixin_30267697的博客 273

Jetpack Compose表单开发:输入框、按钮与Snackbar状态联动实践

声明式UI已成为Android开发的主流范式,理解状态驱动与组件协作是掌握Jetpack Compose的关键。输入框、按钮、Snackbar作为表单页面的三大核心组件,其状态同步与事件回传往往困扰开发者。本文从声明式UI的基本概念切入,剖析状态提升、协程调用与组件挂载位置等底层原理,阐述如何通过统一的状态管理让三类组件自然联动,覆盖登录、注册、反馈提交等高频业务场景。通过一个完整登录表单示例,输出一套可复用的工程实践写法,帮助开发者从零构建稳定、可测试的交互界面。文章兼顾技术科普与实战落地,适合Andro

weixin_34411563的博客 399

【安卓开发——点击事件】

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/gray" android:gravi

mango660的博客 801

Android文本居中:从gravity到layout_gravity的实践指南

在Android界面开发中,控件的对齐方式直接影响用户体验,而‘文本居中’更是看似简单却暗藏玄机。很多开发者混淆了内部内容对齐与外部位置对齐的概念,导致gravity和layout_gravity使用不当,出现预览与真机效果不一致的问题。本文从这两个基础属性出发,解析不同布局如LinearLayout、RelativeLayout、ConstraintLayout下的实现原理与标准写法,并给出动态设置代码及常见坑的排查清单。无论是基础UI还是复杂卡片,掌握这些知识都能显著提升布局效率与准确性。

weixin_34258838的博客 435
上一篇: ViewPager底部添加小圆点
下一篇: Java时间和时间戳相互转换
JerryQuary
博客等级 码龄9年 24粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值