Android如何自定义按钮效果
2019/7/7 21:29:11
本文主要是介绍Android如何自定义按钮效果,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
安卓原生的按钮是多么丑,效果是多么单调,大家也是有目共睹的。
要做一个APP少不了使用按钮,一个好看的按钮少不了好看的效果和外表,这次主要跟大家讲讲如何用drawable的xml文件弄一些好看的自定义样式。
首先是外表
在APP中四四方方,灰色底黑色字的按钮是很难看的,我们希望看到的是圆角,彩色,白字(根据你的个人审美也可以是其他样式)。
首先是在layout里新建一个按钮 ,然后在drawable文件夹里新建一个drawable resource file ,不妨起名为shape ,加一个selector节点里新建一个item节点,在item节点里添加样式
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape> <!-- 填充的颜色(亮绿) --> <solid android:color="#28baa7" /> <!-- 设置按钮的四个角为弧形 --> <!-- android:radius 弧形的半径 --> <corners android:radius="5dip" /> <!-- padding:Button里面的文字与Button边界的间隔 --> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> </selector>
如果想做点击后按钮的样式则要 再添加一个item节点,整个的drawable就是这样
<?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="#aaa" /> <!-- 设置按钮的四个角为弧形 --> <!-- android:radius 弧形的半径 --> <corners android:radius="5dip" /> <!-- padding:Button里面的文字与Button边界的间隔 --> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> <item> <shape> <!-- 填充的颜色(亮绿) --> <solid android:color="#28baa7" /> <!-- 设置按钮的四个角为弧形 --> <!-- android:radius 弧形的半径 --> <corners android:radius="5dip" /> <!-- padding:Button里面的文字与Button边界的间隔 --> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape> </item> </selector>
这样的样式是一般时是亮绿色四周圆角,点击时是白色圆角,除了点击之外还有很多的情况请用时自行查找,也是大同小异
好啦,接下来是布局文件的设置
<Button android:layout_width="150dp" android:layout_height="wrap_content" android:text="button" android:textColor="#fff" android:background="@drawable/shape" android:id="@+id/btn" android:layout_gravity="center_horizontal" />
这个把文字设为白色居中,好啦,一个比较好看的按钮就这么诞生啦
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持找一找教程网。
这篇关于Android如何自定义按钮效果的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-01-18android.permission.read_media_video
- 2024-01-18android_getaddrinfo failed eai_nodata
- 2024-01-18androidmo
- 2024-01-15Android下三种离屏渲染技术
- 2024-01-09Android 蓝牙使用
- 2024-01-06Android对接华为AI - 文本识别
- 2023-11-15代码安全之代码混淆及加固(Android)
- 2023-11-10简述Android语音播报TTS
- 2023-11-06Android WiFi工具类
- 2023-07-22Android开发未来的出路