如何在切换按钮上将文本设置为图像右侧

ras*_*n58 2 android image togglebutton

我有一个带有图像的切换按钮,但是当我更改按钮的文本时,文本位于图像后面。我在setText()函数中添加了额外的空格,但这在不同的屏幕尺寸上不能很好地缩放。那我能做什么?

切换按钮的 xml auton_select.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/auto_select" /> <!-- pressed -->

 <item android:state_checked="false"
       android:drawable="@drawable/auto_unselect" /> <!-- unchecked -->

 <item android:drawable="@drawable/auto_unselect" /> <!-- default -->

</selector>
Run Code Online (Sandbox Code Playgroud)

在布局中使用切换按钮 xml

<ToggleButton
        android:id="@+id/auto_ring_button" 
        android:textOn="               test"
        android:textOff=" "
        android:disabledAlpha=".9"
        android:button="@drawable/auton_select"

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:onClick="showPopupR"
        />
Run Code Online (Sandbox Code Playgroud)

Ser*_*tov 5

尝试将图像设置为复合可绘制而不是背景。

toggleButton.setCompoundDrawablesWithIntrinsicBounds(R.drawable.image, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)

或 XML

android:drawableLeft="@drawable/image"
Run Code Online (Sandbox Code Playgroud)

参考:
setCompoundDrawablesWithIntrinsicBounds()
android:drawableLeft