如何减小单选按钮的图标大小?

8

I have four radio button.

xml source

<RadioButton
    android:id="@+id/fragBtn1"
    android:layout_width="0dp"
    android:layout_height="fill_parent"
    android:layout_weight="1"
    android:background="@drawable/btn_bg_selector"
    android:button="@null"
    android:drawableTop="@drawable/btn_img_selector" />

btn_img_selector

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/selected_btn" android:gravity="center" android:state_checked="true"/>
    <item android:drawable="@drawable/nonselected_btn" android:gravity="center"/>
</selector>

btn_bg_selector

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/btnPressed" android:state_pressed="true"/>
    <item android:drawable="@color/btnNonPressed"/>
</selector>

但按钮图像太大了。
我只想减小按钮图像的大小,而不是减小按钮的大小。
例如,我想缩放一个按钮图像的大小为30px * 30px。
这可行吗?


这可能会对你有所帮助。https://dev59.com/KlXTa4cB1Zd3GeqP5-WP - Karthikeyan
我不想要减小按钮的大小!只想要减小按钮图像的大小... - SaeHyun Kim
我找到了这个解决方案,可以在这里看到我的答案:https://stackoverflow.com/a/44310577/6112256 - Orlay Garcia Duconge
4个回答

8

调整按钮大小

<RadioButton
        android:scaleX="0.75"
        android:scaleY="0.75" />

1
它在左侧添加了额外的边距。 - Tasneem
@Tanseem:在左侧给予负边距。 - Jafar Sadiq SH

3

终于找到了正确的解决方案:

步骤1: 将您的@drawable/selected_btn@drawable/nonselected_btn作为插入绘图

步骤2: 根据需要提供填充。

步骤3: 耶呼!! 您已经减小了单选按钮图像的大小。


0

我找不到解决方案。
但我找到了另一个解决方案。

XML源码

<RadioButton
    android:id="@+id/fragBtn1"
    android:layout_width="0dp"
    android:layout_height="fill_parent"
    android:layout_weight="1"
    android:background="@drawable/btn_bg_selector"
    android:button="@null"
    android:drawableLeft="@drawable/btn_selector" />

MyActivity.java

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);

    BitmapDrawable bd = (BitmapDrawable) this.getResources().getDrawable(R.drawable.mybtn);

    int iconWidth = bd.getBitmap().getWidth();
    int leftPadding = (btn.getWidth() / 2) - (iconWidth / 2);

    btn.setPadding(leftPadding, 0, 0, 0);
}

-1
如果你想做得正确,你应该相应地调整你的资源大小。否则,我不确定如何缩小按钮图像大小而不缩小按钮本身。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接