andbase
andbase copied to clipboard
关于AbLoadDialogFragment的问题
在onload中直接写loadfinish(),回报空指针异常.
发现原因先执行onLoad(),之后才mIndeterminateView 赋值, loadfinish()时停止动画,mIndeterminateView 为null,
// 显示进度框
mDialogFragment = AbDialogUtil.showLoadDialog(ARoutInfoActivity.this,
R.drawable.ic_load, "查询中,请稍等...");
mDialogFragment.setAbDialogOnLoadListener(new AbDialogOnLoadListener() {
@Override
public void onLoad() {
mDialogFragment.loadFinish();
}
});
//源码
public void load(View v){
if(mAbDialogOnLoadListener!=null){
mAbDialogOnLoadListener.onLoad();
}
mIndeterminateView = v;
AbAnimationUtil.playRotateAnimation(mIndeterminateView, 300, Animation.INFINITE,
Animation.RESTART);
}
这个要参照demo中的使用方法使用,不要乱来
this.setAbFragmentOnLoadListener(new AbFragmentOnLoadListener(){
@Override
public void onLoad() {
//第一次下载数据
refreshTask();
}
});
在task的完成方法中 //显示内容 showContentView();
应用环境:在activity中显示一个load弹窗,来完成一个可能比较耗时的本地操作, 如果,不在onload中添加像task这样的异步操作的话,调用loadfinish(),是不可以的.