zoukankan      html  css  js  c++  java
  • Android更改imagebutton为纯色方法

    我的imagebutton所用的背景png图片是灰色的,但是我想让他显示出来是白色的按钮,如果用ps去一个个填充不太现实,那有没有什么办法去通过xml里的属性改变背景颜色呢?

    一开始我用了网上的方法

        <ImageButton
            android:tint="#fff"
            android:layout_marginRight="20dp"
            android:layout_marginTop="0dp"
            android:id="@+id/message"
            android:layout_centerVertical="true"
            android:layout_width="30dp"
            android:layout_height="30dp"
            android:background="@color/transparent"
            android:src="@drawable/message"
            android:layout_toLeftOf="@id/account"/>
    
    

    用了tint属性,设置为白色,再将背景设为透明。

    可是出现了右二按钮的情况

    然后我开始自己调试

     <ImageButton
            android:tint="#fff"
            android:layout_centerVertical="true"
            android:id="@+id/account"
            android:layout_width="30dp"
            android:layout_height="30dp"
            android:layout_alignParentRight="true"
            android:layout_marginRight="5dp"
            android:background="@drawable/account"
            android:src="@drawable/account"
            
            />

    我将background和src同时使用背景图片

    如图最后一个按钮,我发现白色按钮是出现了,可是却不是我想要的,他被放大了。

    后来我又使用了

    android:scaleType="centerInside"

    这个的作用是 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽

    最后终于得到了我想要的结果

    这样就大功告成了!

    最后附上scaletype的用法

    ImageView的属性android:scaleType,即 ImageView.setScaleType(ImageView.ScaleType)。

    android:scaleType是控制图片如何 resized/moved来匹对ImageView的size。

    ImageView.ScaleType / android:scaleType值的意义区别:

    CENTER /center  按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示 
    CENTER_CROP / centerCrop  按比例扩大图片的size居中显示,使得图片长 (宽)等于或大于View的长(宽) 
    CENTER_INSIDE / centerInside  将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
    FIT_CENTER / fitCenter  把图片按比例扩大/缩小到View的宽度,居中显示 
    FIT_END / fitEnd   把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置 
    FIT_START / fitStart  把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置
    FIT_XY / fitXY  把图片 不按比例 扩大/缩小到View的大小显示 
    MATRIX / matrix 用矩阵来绘制


  • 相关阅读:
    Python进阶-----类、对象的属性的增删改查
    SpringCloud(Finchley版) 服务注册与服务发现-Eureka原理深入
    SpringCloud项目之Eureka 配置 application.yml
    sql 获得各科最高分成绩和人数
    mysql主从同步
    Log4j.properties
    JDBC 配置 jdbc.properties
    Java 通过ant打包时给JS/Jsp/css等文件加上版本号 防止有缓存
    Ant 打包 build文件
    Java zip 压缩包下载excel文件
  • 原文地址:https://www.cnblogs.com/kinsomy/p/4974343.html
Copyright © 2011-2022 走看看