【发布时间】:2011-08-23 17:17:46
【问题描述】:
我在 ViewFlipper 中有一些 ImageView。我想尊重图像的纵横比,因此布局不会占用所有屏幕。我已经设置了一个简单的“幻灯片”动画,但 ViewFlipper 总是会比里面的图像大一点。这会在两个滑动图像之间出现不想要的黑色空间。我无法让 ViewFlipper 正确环绕 ImageViews。
一切都在 FrameLayout 中,所以我也可以在那里有一个浮动按钮。这是主要的布局 XML:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:scaleType="centerInside"
>
<ViewFlipper
android:id="@+id/flipper"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:scaleType="centerInside"
>
<ImageView
android:id="@+id/page1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="centerInside"
android:src="@drawable/bg0"
/>
<ImageView
android:id="@+id/page2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="centerInside"
android:src="@drawable/bg1"
/>
</ViewFlipper>
<ImageButton
android:id="@+id/menuButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:src="@drawable/btn_menu"
android:background="@null"
/>
</FrameLayout>
如果我将 ImageViews 的 scaleType 设置为“fitXY”,黑色边距会消失,但不会考虑图像的比例。我已经在 ImageViews 中尝试过“fitCenter”、“fillParent”,以及 0px 的填充。
非常感谢任何帮助,因为我已经为此苦苦挣扎了几个小时。
【问题讨论】: