我无法确定复选框与与之关联的文字之间的间距。
我的google galaxy nexus显示了这一点:
我的星系s2显示了这个:
我的布局很简单:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/transparent_content_box"
android:layout_marginBottom="5dp"
android:orientation="vertical"
>
<CheckBox
android:id="@+id/edit_profile_private_wardrobe"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/edit_profile_wardrobe"
style="@style/Theme.CheckBoxHint"
/>
<CheckBox
android:id="@+id/edit_profile_send_me_vouchers"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/edit_profile_vouchers"
style="@style/Theme.CheckBoxHint"
/>
<CheckBox
android:id="@+id/edit_profile_third_party_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/edit_profile_email"
style="@style/Theme.CheckBoxHint"
/>
</LinearLayout>
按照我的风格:
<style name="Theme.CheckBoxHint">
<item name="android:textSize">16sp</item>
<item name="android:textColor">@color/white</item>
</style>
使用选择器drawable并使用以下选项设置复选框:
<style name="Theme.CheckBox" parent="android:Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/check_box</item>
</style>
然后在主应用主题中使用它:
<item name="android:checkboxStyle">@style/Theme.PMBAppTheme.CheckBox</item>
我已尝试在复选框上将填充设置为0,但这只会使文本位于复选框本身上。
如何删除galaxy s2上复选框周围的额外间距?
答案 0 :(得分:1)
事实证明,在<item name="android:background">@null</item>
中设置Theme.CheckBoxHint
可以解决我的问题。必须有一些透明的drawable用作背景。
答案 1 :(得分:-2)
你需要设置你的边距,而不是你的填充。 确保Theme.CheckBoxHint边距为0。