我的屏幕满足以下要求。
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>