android 按钮顶级效果_Android 源码之button高亮效果
android默认的button在点击以后有默认的高亮效果,但是默认的button比较丑,要替换成自己的按钮背景,采用的方法是:
button.setBackgroundDrawable(drawable);//or
button.setBackgroundResource(resid);
可是这样就没有了点击以后的高亮效果。要实现高亮的效果,网上采用的是在XML中配置的方法:
android:drawable="@drawable/highlight" />
以上代码没试过,暂且记录着,以后试过了补完具体怎么弄。
我在实际开发中,无法使用XML来配置,需要用代码实现点击高亮的效果。网上没找到现成的,找了一下发现有StateListDrawable就是起到这个作用,一句话就是在不同的状态刷不同的drawable。
Button confirmButton = new Button(this);
confirmButton.setPadding(10, 8, 10, 9);
confirmButton.setText("吧啦吧啦吧啦");
confirmButton.setTypeface(Typeface.MONOSPACE);
confirmButton.setTextColor(Color.WHITE);
confirmButton.setTextSize(20f);
confirmButton.setClickable(true);
confirmButton.setEnabled(true);
ShapeDrawable normalView = new ShapeDrawable(new RoundRectangleShape());
ShapeDrawable pressView = new ShapeDrawable(new RoundRectangleShape().setColor(0x805c5c5c));
StateListDrawable stateListDrawable = new StateListDrawable();
stateListDrawable.addState(new int[]{android.R.attr.state_pressed}, pressView);
stateListDrawable.addState(new int[]{android.R.attr.state_enabled}, normalView);
confirmButton.setBackgroundDrawable(stateListDrawable);
ViewGroup mainScreen = (ViewGroup) this.getLayoutInflater().inflate(
R.layout.activity_main, null);
mainScreen.addView(confirmButton, new LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道
android 按钮顶级效果_Android 源码之button高亮效果相关推荐
- hwc android,11.2 Android显示系统框架_android源码禁用hwc和GPU
2. 修改tiny4412_Android源码禁用hwc和gpu(厂家不会提供hwc和gpu的源代码,没有源代码就没法分析了,因此在这里禁用该功能并用软件库实现) 最终源码: git clone ht ...
- android 携程页面,android 仿携程首页源码(自定义button)
[实例简介] [实例截图] [核心代码] package com.example.xiechengdemo; import android.content.Context; import androi ...
- android水果忍者源码,android 水果忍者的 刀锋 效果实现源码
[实例简介] android 水果忍者的 刀锋 效果实现源码 [实例截图] [核心代码] 54532水果忍者Ninjia └── Ninjia ├── AndroidManifest.xml ├── ...
- android 自定义相机源码,Android 自定义相机及分析源码
Android 自定义相机及分析源码 使用Android 系统相机的方法: 要想让应用有相机的action,咱们就必须在清单文件中做一些声明,好让系统知道,如下 action的作用就是声明action ...
- 【android原生态RPG游戏框架源码】
转载请注明原创地址:http://www.cnblogs.com/zisou/p/android-RPG.html 这份源码是在今年6月份写的,当时公司有一个技术部们的学习讨论的讲座,然后我自己就写了 ...
- Android多线程之ArrayBlockingQueue源码解析
阻塞队列系列 Android多线程之LinkedBlockingQueue源码解析 Android多线程之SynchronousQueue源码解析 Andorid多线程之DelayQueue源码分析 ...
- Android园区部队人脸识别源码门禁项目讲解
Android园区部队人脸识别源码门禁项目讲解 这边搞人脸识别相关项目有一段时间,今天抽时间讲述一个经典的人脸识别项目:部队人脸识别门禁系统. 大家都知道部队对人员管理安全要求是相当高的,很多保密的技 ...
- html仿微信滑动删除,使用Vue实现移动端左滑删除效果附源码
左滑删除在移动端是很常见的一种操作,常见于删除购物车中的商品,删除收藏夹中文章等等场景.我们只需要手指按住要删除的对象,然后轻轻向左滑动,便会出现删除按钮,然后点击删除按钮即可删除对象. 点击下载源码 ...
- php jquery ajax登录,jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
弹出层主要用于展示丰富的页面信息,还有一个更好的应用是弹出表单层丰富交互应用.常见的应用有弹出登录表单层,用户提交登录信息,后台验证登录成功后,弹出层消失,主页面局部刷新用户信息.本文我们将给大家介绍 ...
最新文章
- html编辑器kindeditor我的使用方法 (转载)
- 编译程序提示配置PKG_CONFIG_PATH
- 意外收获字节跳动内部资料,一篇文章帮你解答
- 从零开始学视觉Transformer(2):图像与Transformer基础
- CSDN使用富文本编辑器为所发布的文章生成右侧目录
- BZOJ【1606】购买干草
- 金山IPO造富效应:中国最贵程序员群生态
- 神经网络BP反向传播算法原理和详细推导流程
- uCOS事件相关函数代码理解
- 关系网络lbs的应用_基于LBS的陌生人社交APP
- 数据挖掘算法揭秘篇——分类方法(一)
- 撰写营销邮件:避开10 种常见雷区
- 使用安全模式启动计算机,老司机教你电脑安全模式启动方法
- linux php 验证码不显示_如何解决linux php 验证码不显示的问题
- idea 配置web项目图片无法显示问题
- 计算机教师使用计划书,信息技术教师个人发展计划
- php 反射执行类方法,PHP的反射类ReflectionClass、ReflectionMethod使用方法
- 《机器学习算法》SVM进行多分类及代码实现
- 不用写代码的Android 2D RPG游戏引擎
- iVX移动端应用开发指导与规范v2.0
热门文章
- Java生成随机数的4种方式,以后就用它了!
- 使用Nginx配置NodeJs程序(Windows平台)
- Linux debian安装Notepadqq,Linux系统下的Notepad++编辑器
- 思科CCNA第二学期期末考试答案
- 推挽输出和开漏输出_关于51单片机IO口的输出模式结构
- python合并两个数据框_使用python合并两个数据框
- MYSQL数据库实验三多表查询_数据库之 MySQL --- 数据处理 之多表查询 (三)
- 刀剑无双服务器显示404,刀剑无双如何开启GM命令 刀剑无双GM指令修改
- python中八皇后如何运算的_python解决八皇后算法
- 微信公众号url服务器在哪里,微信公众号url认证(服务器认证)