我已經看到類似的問題,但大多數都顯示活動之間傳遞位圖。參考this問題,接受的答案不建議在兩個活動之間傳遞位圖時使用包,而是建議使用意向附加組件。但由於我試圖在片段之間傳遞位圖,而不是活動,因此我無法使用意圖,也不知道除了包之外還有什麼其他用途。以下是我在片段之間傳遞位圖的方法:我通過一個接口將位圖傳遞給活動,然後將其傳遞給該接口內的其他片段。Android通道片段之間的位圖
//MyActivity.java
@Override
public void onMyFragmentFired(Bitmap bitmap) {
FragmentTransaction ft=getSupportFragmentManager().beginTransaction();
args=new Bundle();
fragment = MyFragment.newInstance();
if(bitmap != null){
args.putParcelable("EXTRA_BITMAP", bitmap);
}
fragment.setArguments(args);
ft.add(fragment, "com.example.myfragment");
ft.commit();
}
我不知道我是否面臨任何問題,如果位圖太大等等有沒有更好的方法來做到這一點?
謝謝
你爲什麼不繼續承載你片段參考'Activity'位圖?然後你就可以爲該位圖創建一個getter,並將它放在每個附加到該活動的片段中,就像這個'((MyActivity)getActivity())。getBitmap()'。 – rom4ek
@ rom4ek好主意,我現在就試試 – yrazlik