我使用带有scaleType centerCrop的ImageView来填充拉伸图像的所有布局宽度和高度。但是图像比率使得滚动视图的高度太高,而我的形式下的图像空间也是如此。
所以imageView应该只占用可用空间而不是更多空间,它应该在屏幕的末尾切割而不占用空白。
这是我的xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<ScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/loginScrollView"
android:layout_centerHorizontal="true"
android:clipToPadding="true"
android:fillViewport="true"
android:layout_alignParentEnd="true">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/loginRelativeLayout">
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/bgImageLogin"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:scaleType="fitXY"
android:src="@drawable/bg_blurred"
android:layout_alignParentEnd="true"
android:adjustViewBounds="true" />
<RelativeLayout
android:layout_width="@dimen/user_form_width"
android:layout_height="fill_parent"
android:layout_centerHorizontal="true">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/user_login"
android:id="@+id/connectTextView"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="30dp"
android:layout_marginBottom="20dp"
android:textIsSelectable="false"
android:textSize="@dimen/user_form_title_sp"
android:textColor="@color/user_text_color" />
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:id="@+id/userEmailEditText"
android:layout_centerHorizontal="true"
android:layout_below="@+id/connectTextView"
android:singleLine="true"
android:hint="@string/user_placeholder_email"
android:layout_marginBottom="10dp"
android:background="@drawable/edittext_round"
android:textSize="@dimen/user_form_edit_sp"
android:textStyle="normal"
android:textColorHint="@color/user_text_color_hint" />
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:singleLine="true"
android:id="@+id/userPasswordEditText"
android:layout_below="@+id/userEmailEditText"
android:layout_centerHorizontal="true"
android:hint="@string/user_placeholder_password"
android:background="@drawable/edittext_round"
android:textSize="@dimen/user_form_edit_sp"
android:layout_marginBottom="5dp"
android:textStyle="normal"
android:textColorLink="@color/user_text_color"
android:textColorHint="@color/user_text_color_hint" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="fill_parent"
android:layout_height="20dp"
android:text="@string/user_placeholder_password_forget"
android:id="@+id/userPasswordForgetButton"
android:layout_below="@+id/userPasswordEditText"
android:layout_alignLeft="@+id/userPasswordEditText"
android:layout_alignStart="@+id/userPasswordEditText"
android:layout_marginBottom="10dp"
android:background="@null"
android:textSize="12sp"
android:gravity="left"
android:textColor="@color/user_text_color" />
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/user_login_button"
android:id="@+id/userLoginButton"
android:layout_below="@+id/userPasswordForgetButton"
android:layout_centerHorizontal="true"
android:textAllCaps="true"
android:layout_marginBottom="20dp"
android:textColor="@android:color/white"
android:textStyle="bold"
android:background="@drawable/button_green" />
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:id="@+id/line1"
android:background="@color/midipiletheme_color"
android:layout_toLeftOf="@+id/connectHelperTextView"
android:layout_alignTop="@+id/connectHelperTextView"
android:layout_marginTop="7dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/user_login_separator"
android:id="@+id/connectHelperTextView"
android:layout_below="@+id/userLoginButton"
android:layout_centerHorizontal="true"
android:layout_marginBottom="20dp"
android:textColor="@color/midipiletheme_color"
android:layout_marginLeft="0dp"
android:paddingLeft="7dp"
android:paddingRight="7dp"
android:textSize="12sp" />
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:id="@+id/line2"
android:background="@color/midipiletheme_color"
android:layout_toRightOf="@+id/connectHelperTextView"
android:layout_alignTop="@+id/connectHelperTextView"
android:layout_marginTop="7dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/user_login_fb_helper"
android:id="@+id/helperFbTextView"
android:layout_below="@+id/connectHelperTextView"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="10dp"
android:textColor="@color/user_text_color"
android:textStyle="italic" />
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/user_login_fb_button"
android:id="@+id/userFacebookLoginButton"
android:layout_below="@+id/helperFbTextView"
android:layout_centerHorizontal="true"
android:background="@drawable/fb_button"
android:textColor="@android:color/white"
android:textSize="14sp" />
</RelativeLayout>
</RelativeLayout>
</ScrollView>