为什么我在复选框和文本之间有差距?

时间:2012-02-10 04:27:53

标签: android checkbox

我正在使用图片作为复选框。 这是我正在使用的xml,

<CheckBox
    android:id="@+id/remember"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"        
    android:layout_below="@+id/tableLayout1"
    android:button="@drawable/checkbox_selector"
    android:layout_marginLeft="52dp"
    android:text="@string/remember"
    android:textColor="#000000" />

我正在获得图像和文本之间的差距(见下图),是默认值; 是否有可能改变,如果是,让我知道我必须添加什么属性。

checkbox_selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" 
    android:drawable="@drawable/checked" />
<item android:state_checked="false" 
    android:drawable="@drawable/un_checked" />
</selector>

enter image description here

3 个答案:

答案 0 :(得分:6)

尝试搞乱复选框的android:paddingLeft属性。

有关详细信息,请参阅此帖子:Android - Spacing between CheckBox and text

答案 1 :(得分:2)

使用以下代码缩小差距

 final float scale = this.getResources().getDisplayMetrics().density;
 checkBox.setPadding(checkBox.getPaddingLeft() - (int)(10.0f * scale + 0.5f),
    checkBox.getPaddingTop(),
    checkBox.getPaddingRight(),
    checkBox.getPaddingBottom());

答案 2 :(得分:0)

请尝试这个:::::

    <RelativeLayout  android:layout_width="wrap_content"
           android:layout_height="wrap_content" 
           android:gravity="center">
         <CheckBox
             android:id="@+id/checkBox1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:button="@drawable/checkbox_selector"
             android:text="" />
         <TextView
             android:id="@+id/textView1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="Remember Me"
             android:layout_toRightOf="@+id/checkBox1"
             android:layout_centerInParent="true
             android:textAppearance="?android:attr/textAppearanceMedium" />
</RelativeLayout>