安卓 实现圆角按钮的的自定义和点击圆角按钮按钮实现背景变化

Android 自定义按钮button 加图片和两行文字 Android 自定义按钮button 加图片和两行文字 先上效果图 首先在drawable里建四个文件 1.button.xml <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!--点击背景--> <item android:state_pressed="true"> 阅读详情

刚开始做安卓ui设计,今天做的是对按钮自定义!目标是自己定义一个圆角按钮,并且按下后能后实现背景图片的变化!

首先 我们要定义个按钮形态的xml文件,文件名是roundbutton_default.xml这个文件就是我们按钮的默认初始状态。代码如下:

<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <!-- 填充的颜色 --> 
    <solid android:color="#0000FF" /> 
    <!-- 设置按钮的四个角为弧形 --> 
    <!-- android:radius 弧形的半径 --> 
    <corners android:radius="10dip" /> 
      
<!-- padding:Button里面的文字与Button边界的间隔 --> 
<padding 
   android:left="10dp" 
   android:top="10dp" 
   android:right="10dp" 
   android:bottom="10dp" 
/> 
</shape>


然后,我们在定义按钮按下后变化的按钮形态,也是一个xml文件,文件名字叫做roundbutton_pressed.xml,这里变化的只是颜色设置。代码如下:


<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <!-- 填充的颜色 --> 
    <solid android:color="#FF0000" /> 
    <!-- 设置按钮的四个角为弧形 --> 
    <!-- android:radius 弧形的半径 --> 
    <corners android:radius="10dip" /> 
      
<!-- padding:Button里面的文字与Button边界的间隔 --> 
<padding 
   android:left="10dp" 
   android:top="10dp" 
   android:right="10dp" 
   android:bottom="10dp" 
/> 
</shape>

接下来,我们定义一个选择器,它也是一个xml文件,名字是btn_selector.xml,实现上面按钮形态的变化。代码如下:

<?xml version="1.0" encoding="utf-8"?>

<!-- bg_selector.xml
* File: 
* Copyright © 2013, Texas Instruments Incorporated - http://www.ti.com/
* All rights reserved.
 -->
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/roundbutton_pressed" android:state_pressed="true"/>
    <item android:drawable="@drawable/roundbutton_default" android:state_pressed="false"></item>

</selector>

最后在布局文件中定义一个按钮,加入 android:background="@drawable/btn_selector"属性。代码如下:

            <Button
                android:id="@+id/bncancel"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
               android:background="@drawable/btn_selector"
                android:text="取消"
                android:textColor="#FFFFFF" />

运行整个项目,可查看设置效果!

注意,如果有相应默认图片,把自定义文件改成图片名称,即可简单实现功能!

Android 自定义drawable可以更改背景颜色动态修改背景圆角 (入门篇)Android 自定义drawable可以更改背景颜色动态修改背景圆角 阅读详情

相关推荐

Android应用开发笔记(10):制作自定义背景Button按钮、自定义形状Button的全攻略

在Android开发应用中,默认的Button是由系统渲染和管理大小的。而我们看到的成功的移动应用,都是有着酷炫的外观和使用体验的。因此,我们在开发产品的时候,需要对默认按钮进行美化。在本篇里,笔者结合在应用开发中的经验,探讨一下自定义背景的按钮、自定义形状按钮的实现方法。 首先看实现效果截图: 自定义背景的按钮目前有2种方式实现。 1. 矢量图形绘制的方式 矢量图形绘制的方式实现简单,适合对于按钮形状和图案要求不高的场合。步骤如下: (a) 使用x

7万+

Android之练习MVVM+DataBinding框架模式

MVVM的缺点数据绑定使得 Bug 不易调试,也会使得一个位置的 Bug 被快速传递到别的位置。虽然使用Model方便了保证数据一致性,但是大的模块中长期不释放内存就会造成花费更多的内存。数据双向绑定不利于View部分的代码复用。再更深层次学习,可以使用LiveData+ViewModel以下是采用MVVM框架的代码:int level;@Override//初始化viewModel//模拟查询账号数据}else {@Bindable。

afsdfrsg的博客 532

使用 DEM 模拟金属烧结过程

了解离散元素法 (DEM) 如何彻底改变烧结工艺,提高制造业的效率和精度。

jkh920184196的博客 1125

Android Button 实现渐变背景色、外边框颜色、圆角弧度、点击变色(完整源码)

实现的效果图: 图1: 图2: 第一步: activity_main.xml ,布局代码 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas....

qq_27494201的博客 3488

张正友标定法-MATLAB实验

该方法最早由微软研究院的Zhengyou Zhang教授提出,1998年发表在IEEE TRANSACTIONS ON PATTERNANALYSIS AND MACHINE INTELLIGENCE,论文题目为:AFlexible New Technique for Camera Calibration。 (一)标定平面到图像平面的单应性 单应性(homography):在计算机视觉中被定义

qq_37845624的博客 8288

NIST随机性测试实战:从理论公式到结果解读

本文详细解析了NIST随机性测试的实战应用,从基础测试到高级测试,涵盖频数测试、块频数测试、游程测试等核心方法。通过实际案例和参数设置经验,帮助读者理解如何解读测试结果并排查常见问题,提升随机数生成质量。文章还分享了自动化测试流程和硬件RNG特殊处理技巧,适合密码学和区块链开发者参考。

weixin_29323365的博客 314

Android自定义Button背景色,弧度

Android自定义Button背景色,弧度作为selector放在drawable中 android:state_pressed=”true” 点击 android:state_focused=”true” 聚焦 自定义的Button的xml文件(res/drawable/button_selector.xml)"><selector xmlns:android="http://sc

马世豪 7842

【python】geopandas库安装出现各种问题?可以看看这篇文章

geopandas的安装方法

jgsecurity的博客 3885

改变Android按钮背景颜色的高效方法

关注微信号:javalearns   随时随地学Java 或扫一扫 随时随地学Java 按钮可以在状态改变时改变其颜色(例如按下,禁用,高亮显示)。但是,这需要一一说明每个状态。这篇文章将提供你一个根据状态变化轻松改变按钮颜色的方法。如果你正在写自定义视图,那么不妨也来读一读,因为中间我会涉及到如何用自定义属性实现自定义视图的相关内容。 如何实现

5104

【第48例】BLM模型之市场洞察-五看工具篇(一)

BLM市场洞察

产品线负责人 2108

电机驱动器MP6540H应用设计

/ ... 其他初始化函数(SystemClock_Config, MX_GPIO_Init, MX_TIM1_Init, MX_TIM2_Init)需要你根据STM32CubeMX生成或手动编写。// 假设霍尔传感器引脚是 GPIO_PIN_8, GPIO_PIN_9, GPIO_PIN_10。// 低侧U相GPIO引脚。

zhusl6688的博客 656

Android学习-自定义Button(圆角、边框、不同状态背景色)、圆角Button

//不多说,直接上代码吧.这是自定义按钮 import android.annotation.SuppressLint; import android.content.Context; import android.content.res.ColorStateList; import android.content.res.TypedArray; import android.graphics.C...

baidu_28702947的博客 1728

深入解读WT软件湍流强度计算与分析

深入解读WT软件湍流强度计算与分析

weixin_46713695的博客 1020

android自定义圆角按钮,点击实现背景和文字颜色同时变化

1、效果 2、基于TextView实现,同时制定TV背景和文字的背景的选择器 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" ...

dami_lixm的专栏 633

Yocto系列讲解[入门篇] 2 - 演示运行qemux86-64虚拟机

手把手教大家怎么编译Yocto,并运行一个qemux86虚拟机

fulinux的博客 1万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

android开发 圆角按钮+点击换色

开发需要圆角按钮,并且想要在点击时换色 1. 在res/drawable中添加roundButton.xml <padding android:left="5dp" android:top="10dp" android:right="5dp" android:bottom="10dp" /> <padding android:left="

Yilia的博客 574

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

android studio shape形状图形

android:text="圆角矩形">android:text="椭圆形">--指定形状轮廓的粗细与颜色-->--指定形状轮廓的粗细与颜色-->--指定形状四个圆角半径-->--指定形状内部颜色-->--指定形状内部颜色-->--指定形状椭圆-->//点击按钮,切换背景。3.页面切换背景图形。

weixin_42399500的博客 1737

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

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...

[Android Studio]设置Button的圆角、点击效果、按钮颜色

第一步:创建布局文件 在res/drawable目录下新建xml布局文件 第二步:编写xml文件 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pre...

qq_43510031的博客 1万+

Android实现圆角按钮(附带源码)

Android实现圆角按钮(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 2336

Android 中图片和按钮按下状态变化总结

Android 中图片和按钮按下状态变化总结太阳火神的美丽人生 (http://blog.youkuaiyun.com/opengl_es)本文遵循“署名-非商业用途-保持一致”创作公用协议转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。1、图片设置背景选...

太阳火神的美丽人生 2763

Android button 自定义样式,点击按钮时改变样式

1、边框带颜色的BUTTON <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="边框带颜色" android:background="@drawable/btn_border"/> 边框样式btn_border.xml <?xml version="1.0" enc...

清叶 的专栏 1万+

Android 实现圆角按钮(selector和shape的简单用法)

首先扯点别的:这两天一直浑浑噩噩的,不知道干啥,什么也不想干,整日胡思乱想。如今已是春天了,已经过了惊蛰(虽然即墨这几天有点冷),可是我还是没有从一种行尸走肉的麻木中醒过来,不知道自己在干什什么,以后将要都走向哪里。1. 进入正题,今天简单的演示一下Android中如何实现圆角按钮。使用了selector和shape.先看效果吧,感觉效果不是你想要的,果断pass掉。1 xml布局的第一个,就是一个

leilifengxingmw的博客 4万+

Android中设置点击前后背景和颜色都变化的button

Android中设置点击前后背景和颜色都变化的button效果图设置点击前后的背景的颜色变化设置点击前后文字颜色的变化button点击事件的逻辑设置 效果图 设置点击前后的背景的颜色变化 左边button未点击前(文件放在了res目录下的drawable文件夹下,文件名:logincode_left) <shape xmlns:android="http://schemas.android...

Viki的博客 1451

android实现按钮圆角点击背景、字体颜色都改变

实现圆角按钮,点击的时候背景和字体的颜色都改变,这里的实现效果如下:原状态背景为白色,字体为蓝色,当点击的时候背景为蓝色,字体为白色。介绍两种实现方式。1、使用button。2、实现自定义TextView。 1.使用Button首先在drawable下建一个Button背景的btn_bg_round_click.xml文件。在这里面设置Button原状态和按下的时候,背景的颜色、圆角半径、边...

ymszzu的博客 8915

(Android学习)点击按钮Button,更换背景颜色

一、效果录屏 (暂缺) 二、代码实现 1、btn_nopress_shape.xml <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 设置灰色背景色 --> <solid android:color="#D3D3D3" /> <!-- 设置一下边距,让空间

weixin_45625639的博客 1万+
上一篇: 在linux命令行下编译执行java程序
下一篇: 安卓系统自带的样式(android:theme)解析
daxian521
博客等级 码龄15年 5粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值