中心ToggleButton图像 - 没有文字

The*_*ter 9 android button togglebutton

这是我的ToggleButton:

<ToggleButton
            android:id="@+id/bSmenuTopItems"
            android:layout_width="wrap_content"
            android:layout_height="48dp"
            android:background="@drawable/master_button_selector"
            android:drawableLeft="@drawable/flame_icon" />
Run Code Online (Sandbox Code Playgroud)

我在这张图片中没有文字,我需要一个ToggleButton由于活跃状态.

编辑:我认为问题被误解了.Toggle Button(flame_icon)内部有一个drawable ,它被设置为background.我希望它集中在一起.没有文字,只有图像.我需要一个切换按钮,因为我需要选择一个活动状态.

只有drawableLeft,drawableRight,drawableTop,等我想draweableMiddle这似乎并不exisit.

Rar*_*arw 14

我修改了答案以回答您修改后的问题.

drawableLeft,drawableRightdrawableTop按钮,据我所知,控制该图像相对于选择器置于(A/K/A /关闭)指示符.顶部将它放在指示器上方,左右分别将其放置在特定的一侧.我不相信你可以删除选择器指示器,因为这会破坏使用a的目的ToggleButton.

我可以ToggleButtons使用以下布局将2个绘图中心放在2中.使图像居中ToggleButton使用drawableTop,使图像出现在选择指示器上.然后我设置都textOntextOff是一个空字符串.如果未设置此选项,则默认的开/关文本将显示在选择器指示器上方,并将可绘制器推向侧面.

<LinearLayout 
    android:id="@+id/buttonContainer"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:orientation="horizontal"> 

   <ToggleButton
    android:id="@+id/bSmenuTopItems"
        android:layout_width="0"
        android:layout_weight="1"
        android:layout_height="75dp"
        android:checked="false"
        android:drawableTop="@drawable/flag"
        android:textOn=""
        android:textOff=""
        android:layout_gravity="center"
        android:textColor="#cecece" />

    <ToggleButton
        android:id="@+id/bSmenuTopItems2"
        android:layout_width="0"
        android:layout_height="75dp"
        android:layout_weight="1"
        android:checked="false"
        android:textOn=""
        android:textOff=""
        android:drawableTop="@drawable/chaticon"
        android:layout_gravity="center"
        android:textColor="#cecece" />

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

您所要做的就是调整按钮的高度,将图标相对于您想要的选择器图标定位.我唯一的另一个建议是控制你正在使用的图像的大小.如果您只需调整图像相对于按钮的尺寸,则将其与drawableTop一起放置应自动居中.


spa*_*y21 10

我对接受的答案没有任何好运,但也许我的情况略有不同.我见过的另一个解决方案是使用drawablePadding属性将topDrawable推向按钮的中心.这在一定程度上起作用,但它假定按钮的尺寸是固定的,即便如此,也很难将图标完美地居中.

这就是我提出的. 不要在按钮本身上指定图标.相反,将按钮的背景设置为图层列表drawable,可以在所需的选择器上绘制所需的图标,如下所示:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/master_button_selector" />
    <item>
        <bitmap android:src="@drawable/flame_icon" android:gravity="center" />
    </item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)