2013-07-11 64 views
0

我想在相对布局中显示图像(image1为629x470像素),并使用另一个完整的白色图像(image2为1896x470像素)滚动image1以隐藏/显示image1 。使用ImageView在RelativeLayout中隐藏/显示另一个ImageView

我的image1显示正确。但是,image2会自动调整为较小的版本,并将其垂直放置在image1上,因此我无法完全覆盖image1。如何显示image2以便它完全覆盖image1? adjustViewBounds and scaleType没有帮助。

我的布局如下:

<?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"> 

    <ImageView android:layout_height="wrap_content" 
       android:layout_width="wrap_content" 
       android:src="@drawable/image1" /> 

    <ImageView android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/image2" /> 

</RelativeLayout> 

请建议。

+0

如果你截取了你所得到的结果和模拟结果,它肯定会帮助你得到更好的答案。 – sbichenko

回答

0

把一些重力两个图像,如下面的代码将围绕他们在中心

android:layout_centerInParent="true" 

,或者您可以使用

android:layout_gravity="center" 

您可以使用其他重力选项也为更多的重力请参考以下链接 http://developer.android.com/reference/android/view/Gravity.html

+0

这并没有帮助。由于我的'Image2'的宽度很大,它的大小被调整(而不是缩小)到较小的视图。 – Surge

+0

hımm在两个图像浏览器上试试这个android:scaleType =“centerCrop” –

+0

使用_scaleType =“centerCrop”_正确覆盖'Image1'既宽度也高度明智,但由于Image2被裁剪到中心,有一些透明像素。 – Surge

1
  1. 如果你想使用image2超过滚动并掩盖你image1,你可能不是为image2创建自定义布局(),然后调用它,当你做的事件(向下滚动等)

  2. 您可以使用android:layout_width="wrap_content"对于image1并且使用android:layout_width="match_parent"对于image2来设置它们的大小。

你在同一xml放在一起imageview将解决他们的位置的方式。 Image2将始终保持在image1之下。

+0

问题是'Image2'自动调整大小。如果我使用与Image1相同宽度的图像(即629像素),则它会正确覆盖Image1,但由于Image2会小于屏幕宽度,因此我将无法滚动。所以,由于'Image2'的宽度较大(1896像素),所以'ImageView'缩小了尺寸。 – Surge