我有2张图片main_bg和一张透明图像船。从main_bg裁剪船只,我想在main_bg上放置船舶出现在main_bg上的确切位置上的裁剪图像。当我使用
android:layout_width="match_parent"
android:layout_height="match_parent"
船看起来像一个细长的船。当我使用“wrap_content”而不是“match_parent”时, 它看起来像一个小图像。如何在main_bg上设置精确的宽度和高度。
这是我的xml代码。
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/main_bg"
android:gravity="left"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/ship"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ship"
android:orientation="vertical">
</LinearLayout>
如何正确放置?
答案 0 :(得分:0)
您应该尝试使用FrameLayouts将一个图像叠加到另一个图像上。像:
FrameLayout
Image
FrameLayout
Image
并根据需要设置FrameLayouts的尺寸。
答案 1 :(得分:0)
您可以使用两个FrameLayout
并执行以下操作:
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@drawable/main_bg" >
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ship" >
</FrameLayout>
</FrameLayout>
答案 2 :(得分:0)
使用帖子How to maintain multi layers of ImageViews and keep their aspect ratio based on the largest one?中的LayeredImageView,请参阅带有标记如何放置图层的示例