gpt4 book ai didi

android - ListFragment的onCreateView(),如何强制调用?

转载 作者:行者123 更新时间:2023-11-30 03:37:40 25 4
gpt4 key购买 nike

我正在使用 android 示例应用程序 FragmentPagerSupport.java 来实现页面之间的幻灯片效果。每个页面都包含一个由线程加载的 HTTP 图像。我的 fragment 的 onCreateView() 正在为图像做加载工作。现在我的问题是,我不知道如何将加载的图像位图绘制到在 onCreateView 中创建的 ImageView 上,有什么想法可以强制调用 Fragment 的 onCreateView 吗?

       @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_pager_list, container, false);
View tv = v.findViewById(R.id.text);
((TextView)tv).setText("第 #" + mNum + " 篇");
ImageView iv = (ImageView)v.findViewById(R.id.imageView);
final String pic = FragmentPagerSupport.items.get(mNum).thumb;
Log.e("tag ", "on create view on");
MyItem mi = FragmentPagerSupport.items.get(mNum);
if (mi.bm != null) {
Log.e("tag", "setbitmap for " + mNum);
iv.setImageBitmap(mi.bm);
} else {
new Thread(new Runnable() {
public void run() {
int m = mNum;
final Bitmap bm = loadBitmap(pic);
MyItem mi = FragmentPagerSupport.items.get(m);
mi.bm = bm;
Log.e("tab", "finishing load bitmap for " + m);
// here I want the bitmap can be drawn to the ImageView which is inside the fragment.
}
}).start();
}

return v;
}

最佳答案

您可以使用这个 AsyncTask 类:

public class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
ImageView bmImage;

public DownloadImageTask(ImageView bmImage) {
this.bmImage = bmImage;
}

protected Bitmap doInBackground(Strings... args) {
Bitmap mIcon11 = null;
int m = Integer.parse(args[0]);
String pic = args[1];
try {
final Bitmap bm = loadBitmap(pic);
MyItem mi = FragmentPagerSupport.items.get(m);
mi.bm = bm;
Log.e("tab", "finishing load bitmap for " + m);
} catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
return mIcon11;
}

protected void onPostExecute(Bitmap result) {
bmImage.setImageBitmap(result);
}
}

并用作:

new DownloadImageTask(iv).execute(mNum.toString(),pic);

关于android - ListFragment的onCreateView(),如何强制调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16383162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com