EditText:gravity =“ center_horizo​​ntal”不起作用

时间:2019-01-19 16:22:16

标签: java android

你能告诉我我在做什么错吗? :)

我想将 EditText gravity 设置为 center_horizo​​ntal ,但这不起作用。

谢谢,祝你有美好的一天!

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

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <EditText
                android:id="@+id/something"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginStart="85dp"
                android:layout_marginLeft="85dp"
                android:layout_marginTop="68dp"
                android:layout_marginEnd="85dp"
                android:layout_marginRight="85dp"
                android:ems="10"
                android:gravity="center_horizontal"
                android:hint="Something"
                android:inputType="textPersonName"
                android:backgroundTint="@android:color/holo_green_light"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />

        </LinearLayout>
    </ScrollView>

</LinearLayout>

3 个答案:

答案 0 :(得分:1)

尝试此代码。 我已经删除了编辑文本的边距,并更改了layout_height以匹配父级。

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

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <EditText
            android:id="@+id/something"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginStart="85dp"
            android:layout_marginEnd="85dp"
            android:backgroundTint="@android:color/holo_green_light"
            android:ems="10"
            android:gravity="center_horizontal"
            android:hint="Something"
            android:inputType="textPersonName"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

    </LinearLayout>
</ScrollView>

enter image description here

答案 1 :(得分:0)

如果您打算将EditText置于LinearLayout内部

替换

android:gravity="center_horizontal"

使用

android:layout_gravity="center_horizontal"

此外,您应该删除边距,使其水平居中对齐。

答案 2 :(得分:0)

hiii ..我已经尝试过将您的代码的工作做得很好,为edittext设置重力以将Edittext文本设置为水平居中,并且工作正常。

如果尝试在中央水平位置设置编辑文本视图。在线性布局中添加重力=“ horizo​​ntal_center”

查看此屏幕截图:

enter image description here