1

我正在尝试为我的 Android 应用程序配置复选框,但我遇到了一个问题:我正确配置了我的复选框,并且它们工作得很好,但是由于它们的空间是用重量制成的,所以我在小屏幕上遇到了问题,因为图像始终相同(对于小屏幕,它太大了)。我只是想知道如何将我的图片大小与 dimens.xml 联系起来以获得一些好的东西:p Starkoverflow 上有这个问题,但只是一个不起作用的答案,因为 @drawable/... 没有t 使用属性宽度和高度。

如果你愿意,这里是代码:

可绘制@ Drawable /facebook

<?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/fck_inactive" />
       <item android:state_checked="true" android:drawable="@drawable/fck_active" />
       <item android:drawable="@drawable/fck_inactive" /> 
    </selector>

layout.xml 的XML 文件部分

<LinearLayout 
                        android:orientation="horizontal"
                android:layout_width="fill_parent"
                android:layout_height="0dp"
                android:layout_weight="0.4"
                android:background="@drawable/white_rectangle">
        <CheckBox
                android:id="@+id/facebook"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:button="@drawable/facebook" />
4

1 回答 1

2

因此,如果我正确理解这一点,您希望复选框的背景可绘制与实际复选框大小正确缩放。

我的解决方案是将android:button字段设置为 null 并将复选框状态设置为复选框的android:background字段。

您的代码将变为:

<CheckBox
    android:id="@+id/facebook"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:button="@null"
    android:background="@drawable/facebook" />

这行得通吗?

于 2013-11-06T10:48:59.977 回答