首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Check材料设计

Check材料设计
EN

Stack Overflow用户
提问于 2015-05-07 15:00:32
回答 2查看 1.7K关注 0票数 2

我在我的项目中使用了一个复选框,但是我不能去掉左边的填充,所以对齐不正确。

有谁知道如何消除左边的填充?

EN

回答 2

Stack Overflow用户

发布于 2015-05-07 15:37:17

经过一些研究,我发现,这个特定的边距是在方格的抽屉里。所以我想唯一的解决方案就是创建一个自定义的可绘制的

票数 1
EN

Stack Overflow用户

发布于 2015-05-07 15:42:12

这是因为Android使用的drawable复选框有自己的边距。因此,为了避免它,你必须创建你自己的复选框,带有自定义的可绘制和选中和未选中状态的图标。

1>为您的复选框创建一个自定义选择器,如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
     <selector  xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:state_checked="false" android:drawable="@drawable/ic_unchecked" />
     <item android:state_checked="true" android:drawable="@drawable/ic_checked" />
     <item android:drawable="@drawable/ic_unchecked" /> <!-- default -->
</selector>

2>Then在你的xml中添加一个普通的复选框,将drawable和button属性设置为null,并将选择器指定为checkbox.Also的左侧可绘制的,在复选框图标和文本之间提供一个可绘制的填充。

代码语言:javascript
复制
<CheckBox
                android:id="@+id/chk_terms"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@null"
                android:button="@null"
                android:drawableLeft="@drawable/custom_checkbox"
                android:drawablePadding="@dimen/margin_left_right"
                android:text="@string/i_agree"
                android:textSize="@dimen/text_size_small"
                 />

备注->

这个解决方案还解决了Android4.2及以上版本的checkbox的填充问题。也称为HERE

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30094026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档