1

レイアウトに TextInputLayout を実装しようとしています。私は3つのEditTextを持っています。それぞれを個々の TextInputLayout 内にラップしています。

分離するのではなく、互いに積み重ねています。


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background_colour">

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="8dp"
    android:paddingBottom="16dp">

    <RelativeLayout
        android:id="@+id/sign_in_form_relative"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:gravity="center"
        android:padding="8dp">

        <android.support.design.widget.TextInputLayout
            android:id="@+id/username_input_layout"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

            <EditText
                android:id="@+id/sign_in_username"
                android:layout_width="match_parent"
                android:layout_height="48dp"
                android:layout_alignParentTop="true"
                android:background="@drawable/apptheme_edit_text_holo_light"
                android:drawableLeft="@drawable/ic_action_unread"
                android:drawablePadding="8dp"
                android:drawableStart="@drawable/ic_action_unread"
                android:hint="@string/sign_in_username_field"
                android:imeOptions="actionNext"
                android:inputType="textEmailAddress|textNoSuggestions"
                android:textAppearance="?android:textAppearanceMedium" />
        </android.support.design.widget.TextInputLayout>

        <android.support.design.widget.TextInputLayout
            android:id="@+id/password_input_layout"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

            <EditText
                android:id="@+id/sign_in_password"
                android:layout_width="match_parent"
                android:layout_height="48dp"
                android:layout_below="@+id/username_input_layout"
                android:background="@drawable/apptheme_edit_text_holo_light"
                android:drawableLeft="@drawable/ic_action_secure_dark"
                android:drawablePadding="8dp"
                android:drawableStart="@drawable/ic_action_secure_dark"
                android:hint="@string/reg_password"
                android:imeOptions="actionNext"
                android:inputType="textPassword"
                android:textAppearance="?android:textAppearanceMedium" />
        </android.support.design.widget.TextInputLayout>

        <android.support.design.widget.TextInputLayout
            android:id="@+id/server_api_layout"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

            <EditText
                android:id="@+id/sign_in_api_url"
                android:layout_width="match_parent"
                android:layout_height="48dp"
                android:layout_below="@+id/password_input_layout"
                android:background="@drawable/apptheme_edit_text_holo_light"
                android:drawableLeft="@drawable/ic_action_private_server"
                android:drawablePadding="8dp"
                android:drawableStart="@drawable/ic_action_private_server"
                android:hint="@string/sign_in_server_field"
                android:imeOptions="actionDone"
                android:inputType="textUri"
                android:textAppearance="?android:textAppearanceMedium" />
        </android.support.design.widget.TextInputLayout>

        <Button
            android:id="@+id/sign_in_button"
            android:layout_width="match_parent"
            android:layout_height="48dp"
            android:layout_below="@id/server_api_layout"
            android:layout_marginBottom="8dp"
            android:layout_marginLeft="16dp"
            android:layout_marginRight="16dp"
            android:layout_marginTop="16dp"
            android:background="@drawable/selector_normal_to_bright"
            android:padding="8dp"
            android:text="@string/reg_sign_in"
            android:textAppearance="?android:textAppearanceMedium"
            android:textColor="@android:color/white" />

        <TextView
            android:id="@+id/sign_in_forgot_pwd"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_below="@+id/sign_in_button"
            android:layout_margin="12dp"
            android:layout_marginBottom="24dp"
            android:clickable="true"
            android:gravity="end"
            android:paddingBottom="16dp"
            android:text="@string/reg_forgot_password"
            android:textAlignment="textEnd"
            android:textAppearance="?android:textAppearanceMedium"
            android:textColor="@color/flavor_hyperlink_text_colour"
            android:textStyle="bold" />
    </RelativeLayout>

</ScrollView>

手伝ってください。

ありがとう

4

2 に答える 2

3

android:layout_below="@+id/username_input_layout"あなたはEditTextIDを持っているようです:android:id="@+id/sign_in_password"

代わりに、次のようTextInputLayoutに IDを使用する必要があります。android:id="@+id/password_input_layout"

    <android.support.design.widget.TextInputLayout
        android:id="@+id/username_input_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">

        <EditText
            android:id="@+id/sign_in_username"
            android:layout_width="match_parent"
            android:layout_height="48dp"
            android:layout_alignParentTop="true"
            android:background="@drawable/apptheme_edit_text_holo_light"
            android:drawableLeft="@drawable/ic_action_unread"
            android:drawablePadding="8dp"
            android:drawableStart="@drawable/ic_action_unread"
            android:hint="@string/sign_in_username_field"
            android:imeOptions="actionNext"
            android:inputType="textEmailAddress|textNoSuggestions"
            android:textAppearance="?android:textAppearanceMedium" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/password_input_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android.layou_below="@+id/username_input_layout">

        <EditText
            android:id="@+id/sign_in_password"
            android:layout_width="match_parent"
            android:layout_height="48dp"
            android:background="@drawable/apptheme_edit_text_holo_light"
            android:drawableLeft="@drawable/ic_action_secure_dark"
            android:drawablePadding="8dp"
            android:drawableStart="@drawable/ic_action_secure_dark"
            android:hint="@string/reg_password"
            android:imeOptions="actionNext"
            android:inputType="textPassword"
            android:textAppearance="?android:textAppearanceMedium" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/server_api_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android.layou_below="@+id/password_input_layout">

        <EditText
            android:id="@+id/sign_in_api_url"
            android:layout_width="match_parent"
            android:layout_height="48dp"
            android:background="@drawable/apptheme_edit_text_holo_light"
            android:drawableLeft="@drawable/ic_action_private_server"
            android:drawablePadding="8dp"
            android:drawableStart="@drawable/ic_action_private_server"
            android:hint="@string/sign_in_server_field"
            android:imeOptions="actionDone"
            android:inputType="textUri"
            android:textAppearance="?android:textAppearanceMedium" />
    </android.support.design.widget.TextInputLayout>

これが使用方法ですlayout_below

container1
    editText
container below container1
    editText

あなたはこれをしようとします:

container
    editText
container
    editText below container1

これを試して、進捗状況を報告してください

于 2015-08-27T08:32:19.433 に答える
1

積み重ねることによってTextInputLayoutsお互いにオーバーレイすることを意味する場合、これはおそらくRelativeLayout. LinearLayoutこれらを上下に表示する場合は、にandroid:orientation設定してに切り替えるかvertical、属性を使用しandroid:layout_belowてビュー間の正しい関係を指定します。

于 2015-08-27T08:33:34.823 に答える