我想從一個活動傳遞位圖或繪製對象到另一個,現在我這樣做:如何將位圖或Drawable從一個活動傳遞給另一個活動?
EventPhoto photo = (EventPhoto) parent.getItemAtPosition(position);
BitmapDrawable test = (BitmapDrawable) photo.getDrawable();
Bitmap bitmap = test.getBitmap();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 0, baos);
byte[] b = baos.toByteArray();
Intent intent = new Intent(EventDetailActivity.this, ImageExpandActivity.class);
System.out.println(b.length); //B LENGTH = 908k
intent.putExtra("image",b);
startActivity(intent);
我的問題是,當我嘗試使用putExtra,他不發任何異常,什麼都沒有,但不要回應和Android殺死應用程序,爲什麼會發生這種情況? 我在考慮它的大小,因爲當我傳遞一個小圖像時,一切都正常。
我在找,並找到像這樣的幾個解決方案:How to pass bitmap from one activity to another 但我想使用putExtra,任何想法?
感謝
一種可能性是將其保存到SD卡或什麼的,然後傳遞文件的路徑的意圖。但我也希望有人對如何避免這個問題有一個想法。 – Izkata 2012-08-10 20:44:30
從LogCat中發佈堆棧跟蹤,以便關閉您的強制。 – kcoppock 2012-08-10 20:44:47
另請閱讀:http://code.google.com/p/android/issues/detail?id = 5878 – kcoppock 2012-08-10 20:46:36