关于XListview无法加载更多数据的问题,望解答

Android_BigData_ 2017-11-17 05:07:41
代码如下:

刚开始下拉刷新可以加载数据,但是会跳到顶部,加了判断后无法加载更多数据,必须先下拉刷新一次才能加载下一页的数据

各位看看问题出到哪了


public class ContactlistFragment extends Fragment {

private TextView zb_title;
private XListView zb_list;
private RelativeLayout progress;
private int page = 1;
private List<ZbInfo> infos = new ArrayList<>();
private List<ZbInfo> infosMore ;
private ZbInfo zbInfo;
private ZbAdapter zbAdapter;
private JSONArray datas;
private ImageView noNet;
public ContactlistFragment() {
// Required empty public constructor
}


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_contactlist, container, false);
}

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
progress= (RelativeLayout) getView().findViewById(R.id.proces_chat);
zb_title = (TextView) getActivity().findViewById(R.id.title_top);
zb_title.setText("直播间");
noNet = (ImageView) getActivity().findViewById(R.id.zb_noNet);
zb_list = (XListView) getActivity().findViewById(R.id.zb_list);
zb_list.setXListViewListener(new XListView.IXListViewListener() {
@Override
public void onRefresh() {
page = 1;
infos.clear();
zbAdapter.notifyDataSetChanged();
showFooter();
initData();
onLoad();
}

@Override
public void onLoadMore() {
page++;
initData();
onLoad();//加载完数据停止加载页面
}
});
if (zbAdapter == null){
zbAdapter = new ZbAdapter(getActivity() , infos);
}else {
zb_list.setAdapter(zbAdapter);
zbAdapter.notifyDataSetChanged();
}
initData();
}

private void initData() {
getData("打码"+page);
}

private void getData(String url) {
RequestParams params=new RequestParams(url);
x.http().get(params, new Callback.CommonCallback<String>() {
@Override
public void onSuccess(String result) {
infosMore = new ArrayList<>();
try {
datas = new JSONObject(result).getJSONArray("data");
for (int i=0;i<datas.length();i++){
zbInfo = new ZbInfo();
JSONObject object = datas.getJSONObject(i);
zbInfo.setImage(object.getString("image"));
zbInfo.setSubject(object.getString("subject"));
zbInfo.setStsj(object.getString("ztsj"));
zbInfo.setDidian(object.getString("didian"));
zbInfo.setAbstracts(object.getString("abstract"));
zbInfo.setLinumber(object.getString("linumber"));
zbInfo.setAid(object.getString("aid"));
zbInfo.setFlvurl(object.getString("flvurl"));
infosMore.add(zbInfo);
}
if (infosMore==null || infosMore.size() == 0){
hideFooter();
return;
}else{
infos.addAll(infosMore);
zbAdapter = new ZbAdapter(getActivity(),infos);
if (page==1){
zb_list.setAdapter(zbAdapter);
}else {
zbAdapter.notifyDataSetChanged();
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}

@Override
public void onError(Throwable ex, boolean isOnCallback) {
ConnectivityManager connectivityManager = (ConnectivityManager)getActivity().getSystemService(getActivity().CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if(networkInfo == null || !networkInfo.isAvailable()) {
Toast.makeText(getActivity(),"请保持网络畅通!", Toast.LENGTH_SHORT).show();
zb_list.setVisibility(View.GONE);
noNet.setVisibility(View.VISIBLE);
} else {
Toast.makeText(getActivity(),"地址错误!", Toast.LENGTH_SHORT).show();
}
}

@Override
public void onCancelled(Callback.CancelledException cex) {

}

@Override
public void onFinished() {
progress.setVisibility(View.GONE);
}
});
}
private void onLoad() {
zb_list.stopRefresh();
zb_list.stopLoadMore();
zb_list.setRefreshTime("刚刚");
}

public void showFooter() {
XListViewFooter footer = new XListViewFooter(getActivity());
footer.show();
zb_list.setPullLoadEnable(true);
}

public void hideFooter() {
XListViewFooter footer = new XListViewFooter(getActivity());
footer.hide();
zb_list.setPullLoadEnable(false);
}
}
...全文
160 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧