子线程如何异步更新Fragment的UI界面 线程Fragment异步更新空指针 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public class Fragment_Contacts extends Fragment { ViewGroup rootView; public View onCreateView(.....) { rootView = LayoutInflator.fromContext(this)...;//先获取到视图,返回给rootView return rootView; } public void updateView(){ //这地方就可以异步更新rootView里面的元素了。 }} 你这个只是一个更新函数而已。!貌似你没有看清我的问题哈。由于异步执行了线程,时间是不一定的!有时候线程执行完毕了!但是操作界面没有停留在Fragment_Contacts时就会报错:“空指针”! 最好能把Log贴出来,我理解的意思就是handler.sendMessage的时候Fragment_Contacts并没有被Activity加载,所以空指针了。我觉得首先把Handler定义在View的create的时候不对,你应该在Activity中定义Handler,并且handleMessage。 加上一个函数回调的形式,很简单的, 直接 主线程通知 fragment线程更新 1.在onresume 写入当前页面的tagonpause 置空刷新UI前验证是否为这个tag2.采用AynsTask,不会出现这个错误。3.运用isshowing4.父类更新,保存数据,打开fragment的时候验证是否有数据,无再去获取,有,直接提取。5....6...方法很多你自己思考一下 我的Eclipse不出提示 (急坐等) Android模拟器启动时控制台没有信息显示。 问个无关的问题 Service的问题 webview 查找 cocos2dx 触摸穿透 求助,同时继承多个activity的问题 android封装 Android 快捷方式 传参 线程更新UI 【转发】苦逼楼主有一个米粉室友…… Activity跳转
public View onCreateView(.....)
{
rootView = LayoutInflator.fromContext(this)...;//先获取到视图,返回给rootView
return rootView;
}
public void updateView(){
//这地方就可以异步更新rootView里面的元素了。
}}
由于异步执行了线程,时间是不一定的!有时候线程执行完毕了!但是操作界面没有停留在
Fragment_Contacts时就会报错:“空指针”!
我觉得首先把Handler定义在View的create的时候不对,你应该在Activity中定义Handler,并且handleMessage。
onpause 置空
刷新UI前验证是否为这个tag
2.采用AynsTask,不会出现这个错误。
3.运用isshowing
4.父类更新,保存数据,打开fragment的时候验证是否有数据,无再去获取,有,直接提取。
5....
6...
方法很多
你自己思考一下