我有一個ImageView
的活動,我想發送此ImageView
在其他活動,我該怎麼辦呢?發送的ImageView到另一個活動
回答
您無法在活動之間傳遞圖像。
假設你需要從一個活動傳遞圖像到另一個。
可以通過將其轉換爲如下
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
通行證字節數組的ByteArray到意圖通過位圖: -
Intent intent = new Intent(FirstActivity.this, NextActivity.class);
intent.putExtra("picture", byteArray);
startActivity(intent);
在NextActivity從捆綁獲取字節數組,轉換成位圖圖像: -
Bundle extras = getIntent().getExtras();
byte[] byteArray = extras.getByteArray("picture");
Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
ImageView image = (ImageView) findViewById(R.id.imageView1);
image.setImageBitmap(bmp);
我有一個java.lang.NullPointerException – user2550055
@ user2550055開始一個新的線程與相關的細節。上述工作正常。在新問題中發佈代碼和堆棧跟蹤 – Raghunandan
@ user2550055異常可能是因爲代碼中的某些對象可能爲空。 – Raghunandan
您可以繼承imageview並實現可序列化的接口並以此方式傳遞它,或者您可以將imageview的資源id(int)傳遞給另一個活動,然後使用此資源id加載該活動的imageview,或者使imageview靜態,然後其他acitvity您只需通過FirstClass.imageView
稱它爲你不能真正通過ImageView的本身。但是,您可以傳遞它的值並將其重新加載到您自己的新ImageView中的其他Activity中。
您可以在意圖傳遞Activitys之間的數據。
這又按照實施例這樣;
Intent intent = new Intent(this, MyNewActivity.class);
intent.putExtra("EXTRA_IMAGEVIEW_URL", myImageViewData);
startActivity(intent)
然後在啓動(MyNewActivity)中,您可以再次獲取該數據;
String imageview_url = getIntent().getStringExtra("EXTRA_IMAGEVIEW_URL");
使用任何適合您的數據類型的方法。
編輯注: 該解決方案是假設你發送一個簡單的指針的形象,而不是圖像本身。您可以從您加載它的URL或URI,您的文件系統中的可繪製ID或圖像路徑發送URL。事實上,不要試圖將整個圖像本身作爲base64,binary或任何你想出來的東西。
謝謝Stefan,我會盡力做到這一點 – user2550055
如果圖像太大,就有OOM的可能性。更好地壓縮它在接收端進行解碼。 – Raghunandan
此解決方案假設您發送一個簡單的指針指向圖像,而不是圖像本身。您可以從您加載它的URL或URI,您的文件系統中的可繪製ID或圖像路徑發送URL。事實上,不要試圖將整個圖像本身作爲base64,binary或任何你想出來的東西。 –
通過將位圖轉換爲bytearray來傳遞位圖效果很好我
- 1. 發送的GeoPoint到另一個活動
- 2. 發送Zxing scanResult到另一個活動
- 3. 將包發送到另一個活動
- 4. 發送btimap到另一個活動
- 5. 將值從一個活動發送到另一個活動
- 6. 將數值從一個活動發送到另一個活動活動
- 7. 水平拖動一個ImageView的到另一個活動
- 8. 發送一個字符串從一個活動到另一個
- 9. 如何將imageview從一個活動發送到其他
- 10. 從活動發送URI與另一個
- 11. 將數據從一項活動發送到另一項活動
- 12. 從一個活動發送消息到另一個
- 13. 從一個活動發送網址到另一個
- 14. 發送圖像從一個活動到另一個失敗
- 15. 發送圖像從一個活動到另一個
- 16. 發送變量從一個活動到另一個
- 17. 如何從一個活動的片段發送一些數據到另一個活動的另一個片段
- 18. 如何將數據從一個活動發送到另一個活動。 (藍牙)
- 19. 更新從另一個活動tabhost imageView
- 20. 從另一個活動更改ImageView
- 21. 的Android發送的parseObject到另一個活動
- 22. 將ImageView從一個活動傳遞到另一個活動 - 意圖 - Android
- 23. Android - 如何將ImageView從一個活動轉移到另一個活動?
- 24. 從數據庫表中發送一列到另一個活動
- 25. 得到的ImageView圖像到次活動的另一個ImageView的當點擊第一個imageview的
- 26. 發送多個變量值到另一個活動
- 27. 如何JSON值發送到另一個活動,Android的
- 28. 我想發送listview數據到android中的另一個活動
- 29. 想要發送listview數據到android中的另一個活動
- 30. 如何將圖像發送到android中的另一個活動?
你不能在活動之間傳遞意見。 – Raghunandan
好的..我怎樣才能在其他活動中「導入」imageview? – user2550055
您可以在第二個活動中使用另一個imageview,並將圖像設置爲imageview。 – Raghunandan