如何在中心接通开关

时间:2017-09-27 14:45:12

标签: java android

我添加了一个切换到我的活动并将其拖到中心。当我启动我的应用程序时,开关位于左上角。我似乎无法让它发挥作用。请看代码和图片。谢谢。我在交换机上也有这个代码:

<Switch
        android:id="@+id/switch1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:foregroundGravity="center_horizontal"
        android:gravity="center"
        android:text=""
        tools:ignore="MissingConstraints"
        tools:layout_editor_absoluteX="172dp"
        tools:layout_editor_absoluteY="242dp" />

enter image description here

4 个答案:

答案 0 :(得分:0)

试试此代码

<RelativeLayout

    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <Switch
        android:id="@+id/switch1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerInParent="true"
        android:checked="true"
        android:foregroundGravity="center_horizontal"
        android:gravity="center"
        android:text=""/>
</RelativeLayout>

答案 1 :(得分:0)

添加父布局的重力:  机器人:比重=“中心”。

答案 2 :(得分:0)

如果父布局为线性布局:

<Switch
    android:id="@+id/switch1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:checked="true"
    android:foregroundGravity="center_horizontal"
    android:gravity="center"
    android:text=""
    android:layout_gravity="center"
    tools:ignore="MissingConstraints"
    tools:layout_editor_absoluteX="172dp"
    tools:layout_editor_absoluteY="242dp" />

// just added android:layout_gravity="center"

如果是相对布局

<Switch
    android:id="@+id/switch1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:checked="true"
    android:text=""
    android:layout_centerInParent="true"
    tools:ignore="MissingConstraints"
    tools:layout_editor_absoluteX="172dp"
    tools:layout_editor_absoluteY="242dp" />

答案 3 :(得分:0)

您正在使用ConstraintLayout,通过拖动布局工具:更新绝对属性,仅在AndroidStudio编辑器上使用

真实位置基于app:约束标记。

如果您不熟悉LayoutManagers,我认为您应该从一个更容易的方法开始,例如FrameLayout,LinearLayout,RelativeLayout作为您视图的根。

所有提及的确支持childrem上的android:layout_gravity =“center”或者所有childrem的父级上的android:gravity =“true”。