如何确保按钮在此Android登录对话框中水平对齐?

我在Android上创建了一个登录对话框,我想要两个按钮在顶部和底部边缘水平对齐,而不管屏幕大小如何。有时候“忘记密码”会突破两行,有时不会。我不想在按钮上强制使用minHeight,并且宁愿只使用基于XML设计(而不是代码)的解决方案。如何确保按钮在此Android登录对话框中水平对齐?

风景是好的:

肖像,默认实现离开登录按钮短于 “忘记密码”

一个解决方案,我试过了layout_height被设置match_parent第一个按钮的参数。没有完全工作:

XML:

<LinearLayout 

android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:id="@+id/terms_layout"

android:layout_marginTop="10dp"

>

<Button

android:layout_width="0dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:text="@string/login"

android:textSize="18sp"

android:id="@+id/dialog_login_button_login"

/>

<Button

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="@string/forgotPassword"

android:textSize="18sp"

android:id="@+id/dialog_login_button_forgot_password"

/>

</LinearLayout>

回答:

使用的RelativeLayout,使 “登录” 按钮,对准的 “忘记密码” 按钮,在顶部和底部

回答:

更换您的xml与此xml

<LinearLayout 

android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:id="@+id/terms_layout"

android:layout_marginTop="10dp"

android:weightSum="2"

>

<RelativeLayout

android:layout_width="0dp"

android:layout_height="match_parent"

android:layout_weight="1"

>

<Button

android:layout_width="match_parent"

android:layout_height="match_parent"

android:text="@string/login"

android:textSize="18sp"

android:id="@+id/dialog_login_button_login"

android:layout_alignParentTop="true"

android:layout_alignParentBottom="true"

/>

</RelativeLayout>

<RelativeLayout

android:layout_width="0dp"

android:layout_height="match_parent"

android:layout_weight="1"

>

<Button

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_weight="1"

android:text="@string/forgotPassword"

android:textSize="18sp"

android:id="@+id/dialog_login_button_forgot_password"

android:layout_alignParentTop="true"

android:layout_alignParentBottom="true"

/>

</RelativeLayout>

</LinearLayout>

回答:

正如@manjusg回答,mak e登录按钮将底部和顶部与另一个按钮对齐。

这是我如何做的:

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="match_parent"

android:layout_height="match_parent">

<EditText

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:hint="Email" />

<EditText

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:hint="Password" />

<RelativeLayout

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:id="@+id/terms_layout"

android:layout_marginTop="10dp">

<View

android:id="@+id/center_strut"

android:layout_height="0dp"

android:layout_width="0dp"

android:layout_centerInParent="true" />

<Button

android:layout_width="0dp"

android:layout_height="0dp"

android:text="Login"

android:textSize="18sp"

android:layout_alignParentLeft="true"

android:layout_alignRight="@+id/center_strut"

android:layout_alignBottom="@+id/dialog_login_button_forgot_password"

android:layout_alignTop="@+id/dialog_login_button_forgot_password"

android:id="@+id/dialog_login_button_login" />

<Button

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_alignParentRight="true"

android:layout_alignLeft="@+id/center_strut"

android:text="Forgot Password"

android:textSize="18sp"

android:id="@+id/dialog_login_button_forgot_password" />

</RelativeLayout>

</LinearLayout>

回答:

检查这个

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 

xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

android:paddingBottom="@dimen/activity_vertical_margin">

<LinearLayout

android:orientation="horizontal"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:id="@+id/linearLayout">

<Button

android:layout_weight="1"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:text="Login"

android:id="@+id/button"/>

<Button

android:layout_weight="1"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:text="FORGOT PASSWORD"

android:id="@+id/button2"/>

</LinearLayout>

<LinearLayout

android:layout_alignBottom="@+id/linearLayout"

android:layout_width="wrap_content"

android:layout_centerInParent="true"

android:paddingTop="6dp"

android:paddingBottom="6dp"

android:layout_height="wrap_content">

<View

android:layout_width="0.5dp"

android:layout_height="wrap_content"

android:background="#000000"/>

</LinearLayout>

</RelativeLayout>

以上是 如何确保按钮在此Android登录对话框中水平对齐? 的全部内容, 来源链接: utcz.com/qa/259023.html

回到顶部