我的目标是在屏幕中央显示背景为白色的表单。刚刚关注了其他一些答案,但我无法实现目标。
仅当我删除背景白色时,布局才会居中。但是,我在背景上有图像,所以我需要(我想学习!)插入白色背景来帮助用户。
非常感谢
这就是activity_login.xml
<?xml version="1.0" encoding="utf-8"?>
<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"
android:background="@drawable/background"
android:scaleType="centerCrop"
tools:context=".LoginActivity">
<LinearLayout
android:background="#FFFFFF"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center" >
<EditText android:id="@+id/username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/username"
/>
<EditText android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/login"
android:onClick="performLogin" />
</LinearLayout>
</RelativeLayout>
这是styles.xml
<resources>
<!-- Base application theme. -->
<style name="MyAppTheme" parent="Theme.AppCompat.Light">
</style>
</resources>
感谢您的帮助!
答案 0 :(得分:2)
将标记android:layout_centerVertical="true"
添加到LinearLayout以垂直居中。