之前开发使用过自定义样式的Button,使用挺简单的,但也很常用,因此总结一下。

1,使用drawable文件自定义静态的Button样式

首先,自定义一个drawable文件custombutton.xml:

然后在xml布局文件中:

android:layout_width="wrap_content"

style="?android:attr/borderlessButtonStyle"

android:layout_height="wrap_content"

android:background="@drawable/custombutton"

android:text="这是测试按钮"/>

如果添加下边这一句会去掉Button的默认底色,只留下文字,我们使用自定义的话不需要添加这一句,只需要给Button的背景添加我们自定义的custombutton。

style="?android:attr/borderlessButtonStyle

2,Button实现动态渐变效果

先写一个选择器内容是:

android:bottom="10dp" android:right="10dp" />

android:bottom="10dp" android:right="10dp" />

为button添加选择器,布局文件:

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context="com.a51ckck.custombutton.MainActivity">

android:id="@+id/tv_main_show"

android:background="#f0f000"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="你好习哥!!"

android:textColor="#ff0000"

android:gravity="center"

/>

android:id="@+id/bt_main_click"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:onClick="click"

android:background="@drawable/dynamic"

android:text="点击按钮"

android:layout_centerInParent="true"

/>

最后需要在Activity中为Button添加焦点:

public class MainActivity extends AppCompatActivity {

private TextView mTextView;

private Button mButton;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mTextView= (TextView) findViewById(R.id.tv_main_show);

mButton= (Button) findViewById(R.id.bt_main_click);

setData();

}

private void setData() {

mButton.setFocusable(true);

mButton.setFocusableInTouchMode(true);

mButton.requestFocus();

mButton.requestFocusFromTouch();

}

public void click(View view) {

if(view!=null){

mTextView.setText("你好彭嫂!!!");

}

}

}虽然不复杂,但是确是常使用的,所以掌握它是非常有必要的,最终来看一下效果图:

android动态渐变button,Android--自定义Button的样式以及动态渐变效果相关推荐

  1. android自定义progressbar样式,Android开发中如何实现自定义ProgressBar的样式

    Android开发中如何实现自定义ProgressBar的样式 发布时间:2020-11-20 16:08:10 来源:亿速云 阅读:294 作者:Leah Android开发中如何实现自定义Prog ...

  2. android实现渐变进度条,自定义Android进度条ProgressBar颜色的渐变设置

    1.在drawable文件夹中新建my_progressbar.xml文件android android:endColor="@color/c_e5e5e5" android:st ...

  3. android 颜色渐变动画,Android渐变研究

    GradientDrawable 用GradientDrawable实现渐变可以通过xml或者代码实现,xml实现需要在drawable下建立xml文件,在标签下建立标签. 例如gradlient_b ...

  4. android activity 渐变,关于Android的径向渐变高级编程的实现

    在最近的一系列文章,对midipad APP,有一个关于一个radialgradiant渲染每个padview利用的探讨,对审美的原因,这是一个软件层,而不是一个硬件层.在这个简短的系列中,我们首先看 ...

  5. android 圆形渐变背景,android实现圆形渐变进度条

    最近项目中使用到了渐变效果的圆形进度条,网上找了很多渐变效果不够圆滑,两个渐变颜色之间有明显的过渡,或者有些代码画出来的效果过渡不美观,于是自己参照写了一个,喜欢的朋友可以参考或者直接使用. 先上一张 ...

  6. android设置渐变背景,Android LinearLayout渐变背景

    我在将渐变背景应用于LinearLayout时遇到问题. 根据我所读的内容,这应该相对简单,但似乎不起作用. 作为参考,我正在开发2.1-update1. header_bg.xml: android ...

  7. android标题栏渐变动画,Android 顶部标题栏随滑动时的渐变隐藏和渐变显示效果

    各位早上好,话不多说,先上效果图: 注意顶部:首页textview的变化(显示和隐藏)! 首先分析下:ui状态,其是由recyclerview添加头部组成+recyclerview 头部添加和recy ...

  8. android 圆形渐变背景,Android背景渐变色(shape,gradient) 圆角(shape,corners)

    Android设置背景色可以通过在res/drawable里定义一个xml,如下: [代码]xml代码: 1 2 3 4 android:startColor="#FFF" 5 a ...

  9. android view 渐变动画,Android自定义view渐变圆形动画

    本文实例为大家分享了Android自定义view渐变圆形动画的具体代码,供大家参考,具体内容如下 直接上效果图 自定义属性 attrs.xml文件 创建一个类 ProgressRing继承自 view ...

  10. android 横向渐变颜色,Android开发之渐变色

    Android开发之渐变色 在android.graphics中提供了有关Gradient类,包含LinearGradient线性渐变. RadialGradient径向渐变和SweepGradien ...

最新文章

  1. RK 3299 Ubuntu 配置密钥
  2. Mysql数据类型(二)
  3. CodeForces - 551C GukiZ hates Boxes(二分+贪心)
  4. 威斯康星大学计算机案例,美国威斯康星大学麦迪逊分校CS硕士录取
  5. gitlab 只能owner 上传_代码管理-gitlab使用方法建议
  6. 服务器模型---总结
  7. 电大网络教育计算机应用基础,(热)最新电大奥鹏远程网络教育计算机应用基础题库.doc...
  8. 【进销存管理系统——开题报告 分享(仅供参考呀)】
  9. 富士通服务器操作系统安装,U盘为富士通LIFEBOOK SH760笔记本安装原版win7系统教程...
  10. 计算机中ms-dos什么意思,msdos是什么意思
  11. php计算跨月请假天数,计算请假天数JavaScript方法
  12. 计算机组成原理实验第一章
  13. Java 遍历 Redis Hash key中所有数据
  14. css html制做王者荣耀网站,css3配合js做王者荣耀3D旋转购买英雄效果以及源码展示...
  15. 二进制(Binary)——八进制(Octal)
  16. Docker 安装和常用指令
  17. Android应用在国外之各种广告集成(Vungle,AppLovin,Google,Facebook)
  18. 【每天学点管理】——非暴力沟通
  19. python:用OLS 求企业的净利润年平均增长率
  20. Soft-ICE使用说明及实例——破解ACDSee

热门文章

  1. 【BZOJ1026】windy数,数位DP
  2. setautocommit(false) 还是自动提交了_Hexo和GitPages搭建博客并自动发布
  3. java 数组合并_数组与链表
  4. 在此服务上找不到此服务_windows无法连接到服务,此问题阻止标准用户登录,怎么办?...
  5. 【英语学习】【English L06】U06 Banking L5 I'd like to change Chinese *yuan* into pounds
  6. python朴素贝叶斯分布对数据的要求_统计学习方法与Python实现(三)——朴素贝叶斯法...
  7. pgsql查表名_PostgreSQL 查询一个表
  8. .NET CORE MYSQL 微信小程序 HTTPS 随笔
  9. Oracle案例08——xx.xx.xx.xx,表空间 SYSAUX 使用率95%%
  10. PHP面向对象设计的五大原则