将图像放在另一个在 Android 中拉伸的图像上
Posted
技术标签:
【中文标题】将图像放在另一个在 Android 中拉伸的图像上【英文标题】:Placing an image on another which is stretched in Android 【发布时间】:2011-03-16 06:47:38 【问题描述】:我有一个 UI,其中我有一次图像作为背景,因此它会自行拉伸以填充屏幕。我想在 w.r.t. 的特定位置放置另一个图像。原始图像。我该怎么做?
更详细地说,假设我有一个 320x320 的图像在背景中,并且在 (50,50)(left top corner) 有一个 20x20 的白色正方形。我有另一个 20x20 的图像应该填充它。现在,当背景拉伸时,我希望这个图像相应地拉伸和放置,以便适合那个白框本身。
例如假设我用 2 个黄色框跟踪 bckgrnd 图像。现在前景图像将准确地放置在上面的黄色框中。由于背景图像会扩大/缩小(沿 x 和 y 方向差异太大),前景也应拉伸和定位自身以适合黄色框。
背景图片:http://oi52.tinypic.com/2yn5nut.jpg
前景图片:http://i52.tinypic.com/dm3503.png
这是我现在的 xml 文件。 Pt.(32,47)是背景img中顶部黄色框的左上角
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_
android:layout_ android:background="@drawable/bkgrnd">
<ImageView android:id="@+id/imageView1" android:layout_
android:layout_ android:src="@drawable/foregrnd"
android:scaleType="fitXY" android:layout_marginTop="42px"
android:layout_marginLeft="37px">
</ImageView>
</RelativeLayout>
【问题讨论】:
它的输出是水平的:i52.tinypic.com/50ftkw.png 垂直的:i52.tinypic.com/2ikxuab.png 现在我希望前景图像可以缩放并定位到顶部的黄色框 【参考方案1】:请告诉我你使用的是什么布局???
根据我的理解,我认为您有 2 张图片,您想要一张作为背景图片,另一张图片作为您的前景图片。 为此,您可以使用相对布局并将其高度和宽度设置为“fill_parant” 并将您的第一张图片设置为相对布局的背景。使用 android:background = "firstimage"
然后将另一个图像视图放置在您想要的任何位置。
【讨论】:
我使用的是线性布局。已添加图片以准确解释问题 @ajain:要准确放置任何小部件,您需要使用相对布局。通过从顶部和左侧提供边距,将第二个图像视图放置在上部黄色框上,并获取设置属性 fitxy = true 我如何知道顶部和左侧的边距,因为 bckgrnd 图像可能会根据屏幕尺寸改变其比例 输出为水平:i52.tinypic.com/50ftkw.png 垂直:i52.tinypic.com/2ikxuab.png 现在我希望前景图像缩放和定位以适合顶部黄色框以上是关于将图像放在另一个在 Android 中拉伸的图像上的主要内容,如果未能解决你的问题,请参考以下文章