我正在尝试将图像添加到相机surfaceview并尝试使用以下代码获取该图像.
else if(v.equals(findViewById(R.id.ok_button))){
// saveImage();
topbar.setVisibility(View.GONE);
menubar.setVisibility(View.GONE);
bottom.setVisibility(View.GONE);
View s = ml.getRootView();
s.setDrawingCacheEnabled(true);
Bitmap b = s.getDrawingCache();
Bitmap watermarkimage=b;
s.setVisibility(View.GONE);
Log.e("ok","ok");
Intent i=new Intent(CameraActivity.this,Update.class);
i.putExtra("data",watermarkimage);
startActivity(i);
finish();
}
Run Code Online (Sandbox Code Playgroud)
我保存了整个活动以获取图像.通过使用以下代码,我得到了位图
View s = ml.getRootView();
s.setDrawingCacheEnabled(true);
Bitmap b = s.getDrawingCache();
Run Code Online (Sandbox Code Playgroud)
当我尝试将此位图发送到另一个活动时,我收到此错误
12-05 17:58:38.700: E/AndroidRuntime(10590): FATAL EXCEPTION: main
12-05 17:58:38.700: E/AndroidRuntime(10590): java.lang.IllegalStateException: Can't parcel a recycled bitmap
12-05 17:58:38.700: E/AndroidRuntime(10590): at android.graphics.Bitmap.checkRecycled(Bitmap.java:210)
12-05 17:58:38.700: E/AndroidRuntime(10590): at android.graphics.Bitmap.writeToParcel(Bitmap.java:960)
12-05 17:58:38.700: E/AndroidRuntime(10590): at android.os.Parcel.writeParcelable(Parcel.java:1151)
12-05 17:58:38.700: E/AndroidRuntime(10590): at android.os.Parcel.writeValue(Parcel.java:1070)
12-05 17:58:38.700: E/AndroidRuntime(10590): at android.os.Parcel.writeMapInternal(Parcel.java:488)
12-05 …Run Code Online (Sandbox Code Playgroud) 我试图使用以下代码来获取图像的位图,这是从相机中获取的.我使用这个概念,因为我将图像作为水印添加到拍摄的照片中.所以我只是将活动绘制为位图.
虽然我这样做我得到以下错误(无法包裹回收位图错误发生)
我想将此位图发送到另一个Activity.
如何检查我是否收到图像?
else if(v.equals(findViewById(R.id.ok_button))){
topbar.setVisibility(View.GONE);
menubar.setVisibility(View.GONE);
bottom.setVisibility(View.GONE);
View s = ml.getRootView();
s.setDrawingCacheEnabled(true);
b = s.getDrawingCache();
Log.e("ok","ok");
Intent i=new Intent(CameraActivity.this,Update.class);
i.putExtra("data",b);
startActivity(i);
// s.setDrawingCacheEnabled(false);
// s.setVisibility(View.GONE);
finish();
Run Code Online (Sandbox Code Playgroud)
谢谢
android ×2