package me.bell.downapp;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.widget.ListView;
import com.alibaba.fastjson.JSONObject;
import com.handmark.pulltorefresh.library.PullToRefreshBase;
import com.handmark.pulltorefresh.library.PullToRefreshListView;
import java.util.ArrayList;
import me.bell.downapp.adapter.AppAdapter;
import me.bell.downapp.bean.YYBBean;
import me.bell.downapp.bean.YYBData;
import me.bell.downapp.util.HttpUtils;
public class MainActivity extends AppCompatActivity {
private PullToRefreshListView mListView;
private ArrayList<YYBData> mList = new ArrayList<>();
private AppAdapter adapter;
private int pageContext = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mListView = findViewById(R.id.main_list_view);
mListView.setMode(PullToRefreshBase.Mode.BOTH);
mListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
mList.clear();
getUrl();
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
}
});
adapter = new AppAdapter(MainActivity.this, mList);
mListView.setAdapter(adapter);
}
private void getUrl(){
final HttpUtils utils = new HttpUtils() {
@Override
public void callbackHttp(String httpResult) {
Log.i("okHttp", httpResult);
YYBBean bean = JSONObject.parseObject(httpResult, YYBBean.class);
if (!bean.isSuccess()){
getMethod("http://android.myapp.com/myapp/cate/appList" +
".htm?orgame=1&categoryId=122&pageSize=20&pageContext="+(pageContext==0?0:pageContext+1));
}else {
mList.addAll(bean.getObj());
if (bean.isSuccess() && bean.getMsg().equals("success") && bean.getCount()==0 && bean.getObj().size()==0){
Log.e("list", "list: " + mList.size());
mHandler.sendEmptyMessage(0);
return;
}
pageContext+=20;
getMethod("http://android.myapp.com/myapp/cate/appList" +
".htm?orgame=1&categoryId=122&pageSize=20&pageContext="+(pageContext==0?0:pageContext+1));
}
}
};
utils.getMethod("http://android.myapp.com/myapp/cate/appList" +
".htm?orgame=1&categoryId=122&pageSize=20&pageContext="+(pageContext==0?0:pageContext+1));
}
MHandler mHandler = new MHandler();
class MHandler extends Handler {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
adapter.notifyDataSetChanged();
mListView.onRefreshComplete();
}
}
}