1
我使用AsyncTask
来从url
下载一些图像。下载的图像我保存在Bitmap array
。一旦他们被保存,我不知道如何将他们从一个fragment
传递给另一个。有人可以帮忙吗?如何在两个片段之间传递位图[]
按下载按钮:
d.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String [] urlArray = new String[]{URL_IMAGE_1, URL_IMAGE_2,URL_IMAGE_3,URL_IMAGE_4, URL_IMAGE_5};
asyncTaskA.execute(urlArray);
FrameLayout frameLayout = (FrameLayout)getView().findViewById(R.id.fragmentMain);
frameLayout.removeAllViewsInLayout();
FragmentTransaction ft = getChildFragmentManager().beginTransaction();
FragmentImages fragmentImages = new FragmentImages();
ft.replace(R.id.fragmentMain,fragmentImages);
ft.addToBackStack(null);
ft.commit();
}
});
在MainFragment方法:
public void getImages(Bitmap [] bitmaps){
imagesDownloaded = bitmaps;//private Bitmap [] imagesDownloaded;
images = imageDownloaded; //public stati Bitmap [] images;
}
在的AsyncTask
@Override
protected void onPostExecute(Bitmap[] bitmaps) {
fragmentMain.getImages(bitmaps);
}
在FragmentImages到目前为止
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Bitmap[] bitmaps = FragmentA.images; // The array is null, why??
}
什么即时消失? 林新编程。 在此先感谢。
从服务器下载图像请尝试使用picasso –
为什么你传递位图,你可以传递文件或Uri,现在对于android 7你可以使用FileProvider。 –