场景:我有一个对话框片段。点击一个图像,它启动一个活动,在asynctask中执行该过程。当我返回结果时,活动结束并返回到对话框片段。返回时必须更改图像。
问题:图像保持不变,只有当你关闭对话碎片并重新打开它时才会改变。
抱歉,我发布了代码,只是想了解如何从活动异步任务更新视图的一些建议。
答案 0 :(得分:0)
如果我理解正确,请尝试在 AsyncTask 的 onPostExecute()中使用invalidate()方法进行ImageView。
如果你在启动的 Activity 中启动 AsyncTask ,就像我想的那样,你可以在Dialog Fragment中启动自定义Activity并将你的ImageView指针传递给构造函数。这样的事情。
public class AsyncTaskActivity extends Activity{
private ImageView yourImage;
public AsyncTaskActivity(ImageView yourImage){
this.yourImage = yourImage;
}
....
//your AsyncTask should be like this
new AsyncTask<Void, Void, Void>(){
//here your backround process
...
//here we invalidate ImageView
@Override
protected void onPostExecute(Void result) {
//update image Bitmap or something else
...
yourImage.invalidate();
}
}.execute();
}
最诚挚的问候。
答案 1 :(得分:0)
我建议如下:
需要您的代码才能看到您实际要做的事情。