如何制作2个图像视图,每个视图的大小可以覆盖水平滚动视图内的线性布局内的屏幕

时间:2013-08-15 09:06:19

标签: android imageview android-linearlayout fullscreen horizontalscrollview

我正在尝试在horizo​​ntalscrollview内的linearlayout内获得2(或根据需要)图像视图,这样每个图像都可以缩放以适应屏幕高度而不会扭曲图像,即一个图像在屏幕上显示尽可能大,滚动查看下一个。

一旦添加了第二张图像,我就会得到彼此相邻的2张小图像(两幅图像的尺寸均为217 * 300像素)。目前我的activity_main.xml如下所示..

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
        >

    <HorizontalScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            >
            <ImageView
                android:id="@+id/image1"
                android:src="@drawable/luke"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:scaleType="fitCenter"
                />
            <ImageView
                android:id="@+id/image2"
                android:src="@drawable/luke"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:scaleType="fitCenter"
                />


        </LinearLayout>
    </HorizontalScrollView>


</FrameLayout>

我在布局上尝试了match_parent,fill_parent,wrap_content的各种组合,图像视图上的所有scaleTypes,并花了一天时间浏览网络,寻找类似于我想要的示例,但没有运气。

3 个答案:

答案 0 :(得分:3)

我想说的是设置这两件事:

     <ImageView
          android:layout_height = "match_parent"
          android:layout_width = "10dp" />

这是棘手的部分。在运行时获取屏幕宽度,并将其设置为imageView。

答案 1 :(得分:1)

我倾向于使用带有自定义页面适配器的viewpager来显示您的缩放imageview,而不是尝试以您当前的方式执行此操作。

视图寻呼机/适配器将为您处理视图重新打印,页面捕捉等。

答案 2 :(得分:0)

如何使用

android:width="0"
android:weight ="1"
android:height="match_parent"

在imageViews

和match_parent否则布局中的位置。