2012-07-11 54 views
1

它可能设置任何图像内的其他图像在像素coordenates我想要什么?设置图像内x,y图像

第一张图片是一张大图片,第二张图片是用户的标志。

我觉得女巫画布这是可能的,但我不确定。

任何人都有这样的例子吗?

+0

要在哪里设置第二张图片?底部,顶部,中心...... – 2012-07-11 10:03:08

+0

像素在第一个图像内部协调,例如(100,22); – rbrlnx 2012-07-11 10:03:44

+1

看看这个问题:http://stackoverflow.com/questions/2358460/how-to-copy-a-smaller-bitmap-into-a-larger-one – 2012-07-11 10:03:52

回答

1

您可以使用FrameLayout,让大图像成为背景,小人物成为前景。您可以使用android:layout_gravity属性更改其重力。 FrameLayout文档here。希望这可以帮助。

+0

+1我会用这个解决方案。 – 2012-07-11 10:05:55

+0

这不会让您在特定的x/y位置设置小图片。 – nmw 2012-07-11 20:06:47

+0

@neilmw,实际上它会,但是在支持多个屏幕方面这不是一个好主意。总是更好地与重力去。 – Egor 2012-07-11 20:50:12

0

您可以将第一张图像作为从ImageView扩展而来的类的内容。然后在这个类中,重写onDraw(Canvas canvas),在您指定的坐标处将图像的第二个图像绘制为位图。

E.g.

public class DoubleImage extends ImageView 
{ 
    private Bitmap mSecondBitmap; 
    public DoubleImage(Context context, AttributeSet attrs) 
    { 
     super(context, attrs); 

     // load the second image into mSecondBitmap 
     mSecondBitmap = BitmapFactory.decodeResource(context, R.drawable.my_second_image); 
    } 

    @Override 
    protected void onDraw(Canvas canvas) 
    { 
     super.onDraw(canvas); 

     canvas.drawBitmap(mSecondImage, x, y, null); 
    } 
}