0

我正在尝试构建一个具有 ScrollView 的 android 应用程序,其中图像(远程 URL)填满屏幕(marginTop、marginLeft、marginRight 和 marginBottom 设置为 5dp 左右),当你向下滚动时,你会发现更多的 UI 组件.

我发现很难将图像缩放到确切的尺寸。无法控制图像的大小。有些可能很小,有些可能很大。如果它很小,我想拉伸它以适应屏幕。我的 XML 如下所示:

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <ProgressBar
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:indeterminate="true" 
    android:layout_centerInParent="true"
    android:visibility="invisible"
    android:id="@+id/movieImageLoading"/>

    <ImageView android:id="@+id/headerImage"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:scaleType="fitXY"
    android:layout_marginTop="5dp"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="5dp"
    android:layout_marginBottom="5dp"
    android:contentDescription="@string/movie_image"></ImageView>

    <Button
        android:id="@+id/save2"
        android:layout_width="150dp"
        android:layout_marginTop="10dp"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_below="@+id/headerImage"
        android:text="save" />

</RelativeLayout>

这是错的,有人可以帮我吗?

谢谢..

4

1 回答 1

0

试试这个布局

将您的按钮设置为底部以修复并将图像视图设置在具有填充父项的按钮上方并最后指定进度条

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" > <!-- here make wrap to fill -->
    <Button
        android:id="@+id/save2"
        android:layout_width="150dp"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="10dp"
        android:text="save"
        android:layout_alignParentBottom="true" />

    <ImageView
        android:id="@+id/headerImage"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/save2"
        android:layout_gravity="center"
        android:layout_margin="5dp"
        android:contentDescription="movie_image"
        android:scaleType="fitXY" >
    </ImageView>

    <ProgressBar
        android:id="@+id/movieImageLoading"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_centerInParent="true"
        android:indeterminate="true"
        android:visibility="invisible" />
</RelativeLayout>
于 2013-02-19T11:35:38.753 回答