Android开发中padding使用一个小技巧

   在安卓应用开发中,有时要用到状态按钮(可点击时与不可点击时的背景不相同),而且产品要求的按钮大小是固定的。在不同的手机上按钮的文字显示可能有些异常(主要是在给按钮做背景时很容易出现),此时我们怎么处理呢?我们可以用到padding这个属性。

看看小例子:

--------------------------就一个按钮,但是background是用xml文件写的状态selector--------------------------------

 <Button
            android:id="@+id/publish_starlist_achieve_btn"
            android:layout_width="300dp"
            android:layout_height="44dp"
            android:layout_centerInParent="true"
            android:layout_gravity="bottom"
            android:layout_margin="10dp"
            android:background="@drawable/common_btn_selector"
            android:text="发布"
            android:textColor="#FFFFFF"
            android:textSize="16sp" />

------------------------------common_btn_selector,android:state_enabled不同,对应drawable不同--------------------------------

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/common_btn_normal" android:state_enabled="false"/>
    <item android:drawable="@drawable/common_btn_press" android:state_pressed="true"/>
    <item android:drawable="@drawable/common_btn_normal"/>

</selector>

就这样的话,在小米3,小米4等主流手机上显示没有任务问题,但是在酷派8297D等机型上“发布”2字却显示不全,后来布局文件的Button布局中加了一句android:padding="0dp",问题就解决了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。