对于radiaoButton,应该很多人都用过。下面看一个场景
上方时radiogroup,细致观察发现左1,文字开始位置和右1文字开始位置不同,这是为何呢?
查看布局:
<RadioButton android:layout_width="0dp" android:layout_weight="1.0" android:layout_height="match_parent" android:button="@null" android:gravity="center" android:text="@string/guide_video_safe" style="@style/text_middle1_size" android:textColor="@drawable/textview_selector" android:singleLine="true" /> <RadioButton android:layout_width="0dp" android:layout_weight="1.0" android:layout_height="match_parent" android:button="@null" android:gravity="center" android:text="@string/guide_video_maintain" style="@style/text_middle1_size" android:textColor="@drawable/textview_selector" android:singleLine="true" /> <RadioButton android:layout_width="0dp" android:layout_weight="1.0" android:layout_height="match_parent" android:button="@null" android:gravity="right|center_vertical" android:text="@string/guide_video_emergency" style="@style/text_middle1_size" android:textColor="@drawable/textview_selector" android:singleLine="true" /> <...>
</RadioGroup>
发现并无什么特别,
style定义如下:
<style name="text_middle1_size"> <item name="android:textSize">15sp</item> </style>
那么问题就来了,造成左右区别的到底是哪个属性?
原来这里我们通过设置background可以使得文字的开始位置从最左边开始。