0

我的应用程序允许您选择一个图像,然后当您单击第一个活动的下一步时,它会将您带到活动编号。2,它显示了你在 imageview 中选择的图像,当你点击返回然后在第一个活动上重新点击下一步,它会将你带到活动 num.2 与你之前选择的图像

当您单击活动编号上的按钮时,如何使图像视图被回收。2 所以当你在第一个活动中选择一个新的位图时它会释放内存,这样我就可以避免 OutOfMemory 问题

    // the back button
    Back.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            Intent back = new Intent(Second.this, StartActivity.class);
            startActivity(back);
        }
    });

这是图像视图

    iv = (ImageView) findViewById(R.id.choosen_iv);
    iv.setImageBitmap(choosenBitmap);

我试过choosenBitmap.recycle(); 但它不起作用,当我在第一个活动上单击下一步时,位图仍然存在

4

2 回答 2

2

而不是在返回按钮StartActivityonClick方法中重新开始,只需调用finish()活动即可Second。这将带您回到第一个活动。然后,当您再次启动第二个活动时(通过选择另一个位图),它将像第一次那样初始化所有内容。

于 2012-08-12T21:42:20.903 回答
1

为什么你需要一个带有 an 的后退按钮Intent才能返回上一个活动?硬件后退按钮可以自行处理。

您可以使用onDestroy()活动的生命周期方法来回收您的choosenBitmapBitmap 类型变量。

于 2012-08-12T23:00:21.847 回答