我是android新手。我创建的布局与链接http://prntscr.com/es7oko相同。现在我的问题是我使用相对布局创建了这个布局,并在线性布局中创建了这个最后的“sign / signUp”布局,但是当我将align_parent_bottom属性设置为线性布局时,相对布局高度变为全屏但我指定了wrap_content高度。帮我设置相同的布局。
<?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="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:titleTextColor="@color/colorPrimary"
local:popupTheme="@style/ThemeOverlay.AppCompat.Light"
local:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />
<RelativeLayout
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/bg_sign_in">
<TextView
android:id="@+id/welcom"
style="@android:style/TextAppearance.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/activity_32_margin"
android:text="@string/Welcome"
android:textColor="@color/colorWhite"
android:textStyle="bold" />
<TextView
android:id="@+id/smallText"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/welcom"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/activity_8_margin"
android:text="@string/quote"
android:textColor="@color/colorWhite" />
<TextView
android:id="@+id/smallTextHalf"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/smallText"
android:layout_centerHorizontal="true"
android:text="@string/halfQuote"
android:textColor="@color/colorWhite" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="bottom"
android:orientation="horizontal"
android:weightSum="1"
>
<TextView
android:id="@+id/txtSignIn"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:text="@string/SignIn"
android:textAlignment="center"
android:textColor="@color/colorWhite" />
<TextView
android:id="@+id/txtSignUp"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:text="@string/SignUp"
android:textAlignment="center"
android:textColor="@color/colorWhite" />
</LinearLayout>
</RelativeLayout>
我使用上面的代码得到了这个:http://prntscr.com/es7qcq
答案 0 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card="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/layout_background"
android:orientation="vertical"
android:padding="5dp">
<LinearLayout
android:id="@+id/activity_home_ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
</LinearLayout>
</LinearLayout>
答案 1 :(得分:0)
尝试底部的这种布局:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="bottom"
android:orientation="horizontal"
android:padding="15dp"
android:weightSum="1">
<Button
android:id="@+id/txtSignIn"
style="?android:attr/borderlessButtonStyle"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:background="@null"
android:text="Sign in"
android:textAlignment="center"
android:textColor="@color/color_black"
android:textSize="18sp" />
<View
android:layout_width="1dp"
android:layout_height="20dp"
android:background="@color/color_white"></View>
<Button
android:id="@+id/txtSignUp"
style="?android:attr/borderlessButtonStyle"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:background="@null"
android:text="Sign Up"
android:textAlignment="center"
android:textColor="@color/color_black"
android:textSize="18sp" />
</LinearLayout>
输出:
答案 2 :(得分:0)
#如果您不想在屏幕底部对齐signIn
和signUp
按钮,则需要设置fixed height
banner RelativeLayout
。
试试这个:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:titleTextColor="@color/colorPrimary"
local:popupTheme="@style/ThemeOverlay.AppCompat.Light"
local:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />
<RelativeLayout
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="300dp"
android:background="@drawable/bg_sign_in">
<TextView
android:id="@+id/welcom"
style="@android:style/TextAppearance.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/activity_32_margin"
android:text="@string/Welcome"
android:textColor="@color/colorWhite"
android:textStyle="bold" />
<TextView
android:id="@+id/smallText"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/welcom"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/activity_8_margin"
android:text="@string/quote"
android:textColor="@color/colorWhite" />
<TextView
android:id="@+id/smallTextHalf"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/smallText"
android:layout_centerHorizontal="true"
android:text="@string/halfQuote"
android:textColor="@color/colorWhite" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:orientation="horizontal">
<TextView
android:id="@+id/txtSignIn"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:text="@string/SignIn"
android:textAlignment="center"
android:textColor="@color/colorWhite"
android:gravity="center_vertical"/>
<TextView
android:id="@+id/txtSignUp"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:text="@string/SignUp"
android:textAlignment="center"
android:textColor="@color/colorWhite"
android:gravity="center_vertical"/>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
<强>输出:强>
#如果您想在屏幕底部对齐signIn
和signUp
按钮,则需要将height
设置为wrap_content
对于横幅RelativeLayout
,需要设置LinearLayout
属性layout_alignParentBottom
值true
。
试试这个:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:titleTextColor="@color/colorPrimary"
local:popupTheme="@style/ThemeOverlay.AppCompat.Light"
local:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />
<RelativeLayout
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_sign_in">
<TextView
android:id="@+id/welcom"
style="@android:style/TextAppearance.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/activity_32_margin"
android:text="@string/Welcome"
android:textColor="@color/colorWhite"
android:textStyle="bold" />
<TextView
android:id="@+id/smallText"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/welcom"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/activity_8_margin"
android:text="@string/quote"
android:textColor="@color/colorWhite" />
<TextView
android:id="@+id/smallTextHalf"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/smallText"
android:layout_centerHorizontal="true"
android:text="@string/halfQuote"
android:textColor="@color/colorWhite" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:orientation="horizontal">
<TextView
android:id="@+id/txtSignIn"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:text="@string/SignIn"
android:textAlignment="center"
android:textColor="@color/colorWhite"
android:gravity="center_vertical"/>
<TextView
android:id="@+id/txtSignUp"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.5"
android:text="@string/SignUp"
android:textAlignment="center"
android:textColor="@color/colorWhite"
android:gravity="center_vertical"/>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
<强>输出:强>
希望这会有所帮助〜