0

我正在尝试从 ViewPagerParallax 中保存背景,可以在此处找到:link

当我移动时,背景会发生变化,我想把背景的这个“部分”传递给另一个活动。

要将它从一个活动传递到另一个活动,我可以:

 Intent intent = new Intent(context, Activity2.class);
            ByteArrayOutputStream stream = new ByteArrayOutputStream();
            //Bitmap bmp = pager.getSavedBitmap().getBitmap();
            Bitmap bmp = pager.getBitmap();
            bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
            byte[] byteArray = stream.toByteArray();
            intent.putExtra("image",byteArray);
            context.startActivity(intent);

    byte[] byteArray = getIntent().getByteArrayExtra("image");
    Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
    @SuppressWarnings("deprecation")
    Drawable d = new BitmapDrawable(bmp);
    layout.setBackground(d);

但是知道我想要的背景部分是困难的,我试图从 onDraw 方法中获取它,如下所示:

 canvas.drawBitmap(saved_bitmap, src, dst, null);
        if(canvas != null){         
            my_bitmap = new BitmapDrawable();
            my_bitmap.draw(canvas);
        }

但是当我使用 getBitmap 时:

public Bitmap getBitmap(){
    return my_bitmap.getBitmap();
}

图像没有像在第一个活动中那样缩放。

4

1 回答 1

0

这个帖子没有类似的问题吗?Android 将画布保存到位图中

也许它可能会有所帮助。

于 2013-06-27T09:55:29.360 回答