checkbox-padding 调整checkbox字体跟图标距离

有时候我们会遇到需要调整控件中的内容相对于容器的位置。这里有两种情况
1.linearlayout这样的容器中,包含button类的控件,这时候margin可以调节
2.textview中的文字内容 今天想实现一个功能,就是在一个relativelayout里面放了两个textview,但是这两个textview里面字体大小有限制,而两个字体 间距也有要求。因为relativelayout的大小是固定的,而textview里面内容跟textview又有变距。最终导致的结果就是,两个的距 离始终没办法达到要求。
 尝试1.relativelayout本身的控件是可以重叠的,所以使用marginBottom,而不处理两个textview的相对位置
结果:失败  因为如果不描述两者之间的相对位置,那个textview就会置顶,如果添加了,就会在他的下面,无法调整到二者的距离很小
尝试2.使用padding
结果:顺利实现了,看了网上说的,感觉还是有点不对,padding更偏向于控件内容相对于控件边缘的位置。我的之所以实现,是因为我把textview放到relativelayout里面了,这就能使textveiew的边框非常大。

padding的另外一个用处就是:它可以调节checkbox文字跟图片的内容,这个非常的实用的

代码如下

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.text.MainActivity" >

    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />
    <CheckBox
        android:layout_below="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#0000ff"
        android:text="dddddd"
        android:paddingLeft="30dp"
        android:paddingRight="12dp"
        android:paddingTop="50dp"
        
        />

</RelativeLayout>

效果你会发现,图标的位置没有变化,变化的仅仅是文字。从而得出的 结论就是

checkbox中的padding针对的是text部分,而不是image

原文地址:https://www.cnblogs.com/zhangshuli-1989/p/zhangshuli_checkbox_15020614.html