如何自定义android Button样式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何自定义android Button样式相关的知识,希望对你有一定的参考价值。

亲,可以用到Drawable中的shape哦,给你一个demo

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="

    <item android:state_focused="false">
        <shape>
            <solid android:color="@color/find_passwordbar_bg"/>
            <stroke android:width="0.5dp" android:color="#C8C8C8"/>
        </shape>
    </item>
    
    <item android:state_focused="true">
        <shape>
            <solid android:color="@color/find_passwordbar_bg"/>
            <stroke android:width="0.5dp" android:color="@color/main_color"/>
        </shape>
    </item>

</selector>

 各个属性的介绍

solid:实心,就是填充的意思
android:color指定填充的颜色

gradient:渐变
android:startColor和android:endColor分别为起始和结束颜色,ndroid:angle是渐变角度,必须为45的整数倍。
另外渐变默认的模式为android:type="linear",即线性渐变,可以指定渐变为径向渐变,android:type="radial",径向渐变需要指定半径android:gradientRadius="50"。

stroke:描边
android:width="2dp" 描边的宽度,android:color 描边的颜色。
我们还可以把描边弄成虚线的形式,设置方式为:
android:dashWidth="5dp" 
android:dashGap="3dp"
其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离。

corners:圆角
android:radius为角的弧度,值越大角越圆。
我们还可以把四个角设定成不同的角度,方法为:
<corners 
        android:topRightRadius="20dp"    右上角
        android:bottomLeftRadius="20dp"    右下角
        android:topLeftRadius="1dp"    左上角
        android:bottomRightRadius="0dp"    左下角
 />

 

我自己写的一个按钮,效果就像图中所示,用的Shape


eclipse中新建的方法如下,如图所示



新建后存放位置在res/drawable下


希望能帮到你,还望采纳

参考技术A

  1.在layout中添加2个按钮,在按钮中调用了style和android:background属性,这两个属性一个是自定义样式,一个是给按钮添加背景图片

  2.展开res目录,可以看到在values目录下有styles.xml文件,该文件用于自定义样式,双击打开

  3.下图中标注的是自定义的样式,name为BtnStyle,当按钮调用自定义样式的时候访问这个name

参考技术B

  在windows7操作系统Android studio中按照如下方法定义button的样式。

1、首先使用Android studio创建一个项目,项目结构如下:

2、依次打开,res-->values-->style文件,如下图:

3、在该文件中添加一个style,包括属性名和属性,如下图:

4、在xml布局中使用style样式,如下图:

参考技术C

    在layout中添加2个按钮,从下图中可以看出在按钮中调用了style和android:background属性,这两个属性一个是自定义样式,一个是给按钮添加背景图片。

    展开res目录,可以看到在values目录下有styles.xml文件,该文件用于自定义样式,双击打开。

    name为BtnStyle,当按钮调用自定义样式的时候访问这个name。

    下图是在button中调用自定义样式的方法,比较简单

参考技术D   1.在layout中添加2个按钮,在按钮中调用了style和android:background属性,这两个属性一个是自定义样式,一个是给按钮添加背景图片

  2.展开res目录,可以看到在values目录下有styles.xml文件,该文件用于自定义样式,双击打开

  3.下图中标注的是自定义的样式,name为BtnStyle,当按钮调用自定义样式的时候访问这个name

bootstrap-table 使用遇到的问题总结:1.右上角button样式自定义;2.右上角引用图标自定义;3.表头/表格内容显示不对齐;4.自定义设置表头及表格边框样式

技术分享图片

问题一:右上角button样式自定义

  方法:

//修改bootstrap-table右上角按钮样式
    $(".table-box .columns-right button").removeClass("btn-secondary").css({"backgroundColor": "#fafafa","border": "1px solid #c2c2c2","color": "#333333"});

问题二:.右上角引用图标自定义

iconsPrefix: ‘fa‘,                        //定义图标集名称(‘glyphicon‘或‘fa‘FontAwesome)。默认情况下‘fa‘用于Bootstrap v4。
        icons:  {
            refresh: ‘fa-refresh‘,
            columns: ‘fa-th-list‘,
            toggleOff: ‘fa-toggle-off‘,
            toggleOn: ‘fa-toggle-on‘,
            detailOpen: ‘fa-plus‘,
            detailClose: ‘fa-minus‘,
            fullscreen: ‘fa-arrows-alt‘
        },

问题三:表头/表格内容显示不对齐

  在文件【bootstrap-table.js】中找到BootstrapTable.prototype.resetView方法,将其中的

  this.resetHeader();
  padding += this.$header.outerHeight();

  这两句代码注释掉。

问题四:自定义设置表头及表格边框样式

.fixed-table-container thead th , .fixed-table-container tbody td{
    border:0px;
    border-bottom: 1px solid #c2c2c2;
}

 

rowStyle: function (row, index) {
            return {
                css: {
                    "border": "0px",
                    "border-bottom":"1px solid red",//此处设置border后,复选框一列没有border值,最好还是用css设置tr的border
                    "height": "30px",
                    "padding": "0 10px"
                }
            };
        },

 

问题五:表格宽度自适应

columns参数中设置固定宽度width: ‘70‘。当页面宽度大于表格总宽度时,表格会自动放宽,


以上是关于如何自定义android Button样式的主要内容,如果未能解决你的问题,请参考以下文章

如何自定义android Button样式

如何自定义android Button样式

android中样式和自定义button样式

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

请教自定义CheckBox样式的问题

如何自定义Android Dialog的样式?