Android自定义RadioButton样式偏移兼容性问题
程序员文章站
2022-03-01 14:49:38
...
公司的一个项目、一直都在红米上做界面、一天为了看下分辨率适配、在一小米2和索尼手机上面调试了下程序、结果发现原先居中对齐的底部栏按钮、现在都向右偏移了、最后发现一个原因是Android版本之间的差异、Android4.2以上和4.2以下区别
但是如果在4.2以下的环境运行、android:button=“@null”
是不生效的、只能起到setButtonDrawable(透明图片)的作用、始终有个空位在那里、倒是radio button的drawableTop和text向右边偏移
添加android:background="@android:color/transparent"到xml上就没问题了
完整代码如下
XML代码
<RadioButton android:id="@ id/home_radio" style="@style/rg_btn_style" android:drawableTop="@drawable/navigation_home_selector" android:text="@string/home_text" android:textColor="@drawable/navigation_selector_color" />
style代码
<style name="rg_btn_style"> <item name="android:button">@null</item> <item name="android:gravity">center</item> <item name="android:layout_gravity">center</item> <item name="android:layout_weight">1</item> <item name="android:textSize">10sp</item> <item name="android:textColor">@color/common_background</item> <item name="android:drawablePadding">1dp</item> <item name="android:layout_width">match_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:layout_marginTop">4dp</item> <item name="android:background">@android:color/transparent</item> </style>