0

我想ToogleButton在按下时变成绿色/白色的那个栏的右侧对齐文本。

更明确地说,我将发布代码以及我现在得到的结果。

 <ToggleButton android:id="@+id/ToggleButton01"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  layout_gravity="center_vertical"
                  android:textOff="Off"
              android:textOn="On"/>

 ToggleButton onOffButton = (ToggleButton) findViewById(R.id.ToggleButton01);
 onOffButton.setGravity(Gravity.RIGHT | Gravity.CENTER_VERTICAL);
 onOffButton.setPadding(0, 0, 5, 0);

结果: 在此处输入图像描述

我希望栏和文本不重叠。

4

2 回答 2

2

你试过属性重力吗?

android:gravity="center"

android:layout_gravity="center"和之间的区别在于android:gravity="center",第一个将以您Viewlayout内容为中心,而第二个将以该内容为中心View

这是我的按钮布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <ToggleButton android:id="@+id/ToggleButton01"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:layout_gravity="center_vertical"
                  android:textOff="Off"
                  android:gravity="center"
              android:textOn="On"/>

</LinearLayout>
于 2012-06-18T16:33:41.830 回答
1

你在看android:drawableLeft="@drawable/the_button_resource"

还有其他选项,例如 drawableRight/drawableTop/drawableBottom 将可绘制资源放置在参数建议

于 2015-03-26T11:48:21.463 回答