嵌套滚动视图内的滚动未发生

时间:2019-02-12 12:38:15

标签: android scrollview android-nestedscrollview

我的屏幕满足以下要求。
1)屏幕上中央应垂直排列三个编辑文本
2)在屏幕底部应该是一个文本和一个垂直竖起的按钮

到目前为止我所做的:

a)采取了一个与父级宽度和高度匹配的相对布局
b)采取另一种以包装内容为高度的相对布局,并使其在父级中居中
c)在fillViewPort内使用嵌套滚动视图,并匹配父级的高度和宽度
d)以线性布局作为子级,并垂直添加了三个editText
e)将线性布局作为主要相对布局的子元素,并使其与父底部对齐为真
f)在线性布局内添加了文本和按钮

但是我的编辑文本视图正与底部文本重叠。如果我对相对布局的高度进行硬编码,则它正在滚动。下面是我的示例代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:paddingStart="@dimen/_5sdp"
android:paddingTop="@dimen/_5sdp"
android:paddingEnd="@dimen/_5sdp"
>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:visibility="visible">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

    <androidx.core.widget.NestedScrollView
        android:id="@+id/toplayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="@dimen/margin30"
        android:orientation="vertical">

    <com.google.android.material.textfield.TextInputLayout
        android:id="@+id/til_mobile"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/TextLabel">

        <CustomTextInputEditText
            android:id="@+id/et_mobileno"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/emn"
            android:imeOptions="actionNext"
            android:inputType="number"
            android:maxLength="8"
            android:padding="@dimen/padding10"
            android:singleLine="true"
            android:textColor="@color/hometext"
            android:textColorHint="@color/text_hint_color"
            android:textSize="@dimen/textsize14" />
    </com.google.android.material.textfield.TextInputLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/til_mobile"
        android:orientation="vertical">

        <RelativeLayout
            android:id="@+id/otpView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:visibility="visible">

            <com.google.android.material.textfield.TextInputLayout
                android:id="@+id/til_password"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:theme="@style/TextLabel">

                <CustomTextInputEditText
                    android:id="@+id/et_otp"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="@string/eotp"
                    android:imeOptions="actionDone"
                    android:inputType="textPassword"
                    android:maxLength="4"
                    android:padding="@dimen/padding10"
                    android:singleLine="true"
                    android:textColor="@color/hometext"
                    android:textColorHint="@color/text_hint_color"
                    android:textSize="@dimen/textsize14" />
            </com.google.android.material.textfield.TextInputLayout>

            <CustomTextView
                android:id="@+id/tv_resendotp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/til_password"
                android:layout_alignParentEnd="true"
                android:text="@string/resendotp"
                android:textColor="@color/hometext"
                android:textSize="@dimen/textsize14"
                app:fontType="4" />

        </RelativeLayout>

        <CustomCheckBox
            android:id="@+id/cb_confirmNum"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="@dimen/_5sdp"
            android:buttonTint="@color/text_hint_color"
            android:drawablePadding="@dimen/padding10"
            android:gravity="start"
            android:text="@string/terms_confirm_num"
            android:textColor="@color/hometext"
            android:textSize="@dimen/textsize14"
            android:visibility="gone"
            app:fontType="4"
            tools:targetApi="lollipop" />

        <LinearLayout
            android:id="@+id/selectOperator"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:visibility="gone">

            <CustomTextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_margin="@dimen/_5sdp"
                android:gravity="center"
                android:text="@string/which_operator"
                android:textColor="@color/hometext"
                android:textSize="@dimen/textsize14"
                app:fontType="4" />

            <RadioGroup
                android:id="@+id/rg_operator"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginTop="@dimen/padding5"
                android:gravity="center"
                android:orientation="horizontal"

                >

                <CustomRadio
                    android:id="@+id/rb_zain"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginEnd="@dimen/margin10"
                    android:background="@android:color/transparent"
                    android:button="@null"
                    android:checked="true"
                    android:drawableStart="@drawable/custom_checkbox"
                    android:drawablePadding="@dimen/padding5"
                    android:gravity="start|center"
                    android:text="@string/zain"
                    android:textColor="@color/hometext"
                    android:textSize="@dimen/textsize14"
                    app:fontType="4" />

                <CustomRadio
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="@dimen/margin10"
                    android:background="@android:color/transparent"
                    android:button="@null"
                    android:checked="false"
                    android:drawableStart="@drawable/custom_checkbox"
                    android:drawablePadding="@dimen/padding5"
                    android:gravity="start|center"
                    android:text="@string/viva"
                    android:textColor="@color/hometext"
                    android:textSize="@dimen/textsize14"
                    app:fontType="4" />

            </RadioGroup>

        </LinearLayout>

    </LinearLayout>
    </LinearLayout>
</androidx.core.widget.NestedScrollView>

    

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_gravity="center"
    android:layout_margin="@dimen/margin5"
    android:gravity="center"
    android:orientation="vertical">

    <CustomCheckBox
        android:id="@+id/cb_citizen"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="start"
        android:buttonTint="@color/text_hint_color"
        android:gravity="center_vertical"
        android:paddingTop="@dimen/padding10"
        android:text="@string/terms_port"
        android:textColor="@color/hometext"
        android:textSize="@dimen/textsize14"
        android:visibility="visible"
        app:fontType="4"
        tools:targetApi="lollipop" />

    <CustomButton
        android:id="@+id/btn_cotp"
        style="@style/ButtonStyleNew"
        android:gravity="center"
        android:minWidth="100dp"
        android:text="@string/cotp"
        android:textSize="@dimen/textsize14"
        app:fontType="5" />
</LinearLayout>

0 个答案:

没有答案