ListView分页加载,数据由NOHttp加载
来源:互联网 发布:李米的猜想知乎 编辑:程序博客网 时间:2024/06/07 19:56
private ListView lv_repeat_works;private ImageView img_icon_repeat_works_back;private List<TaskForwardList> taskForwardLists = new ArrayList<TaskForwardList>();private CallSever callSever;private RepeatAdapter repeatAdapter;private View relativeLayout_foot;private User user;private boolean isLoad = false;/** 首次网络请求页码 */private int FIRST_PAGE = 1;/** 数据请求页码 **/private int topage = 1;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_repeat); user = SPUtils.getObject("user", User.class); callSever = CallSever.getRequestInstance(); BaseApplication.mHandler = new Handler() { @Override public void handleMessage(Message msg) { //数据回掉处理 if(msg.what == UI_UPDATE_FORWARD) { taskForwardLists.addAll((List<TaskForwardList>) msg.obj); setAdapter(taskForwardLists); if(topage==BaseApplication.getTotalPage()) { lv_repeat_works.addFooterView(relativeLayout_foot); } } } }; init(); getForwardData(FIRST_PAGE);}private void init() {
//底部foot
LayoutInflater layoutInflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE); relativeLayout_foot = layoutInflater.inflate(R.layout.activity_footview, null); img_icon_repeat_works_back = (ImageView) findViewById(R.id.img_icon_repeat_works_back);
//listView lv_repeat_works = (ListView) findViewById(R.id.lv_repeat_works);
//ListView绑定监听 lv_repeat_works.setOnScrollListener(this); img_icon_repeat_works_back.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } });}//设置Adapterprivate void setAdapter(List<TaskForwardList> taskForwardLists) { if(repeatAdapter == null) { repeatAdapter = new RepeatAdapter(ForwardActivity.this, taskForwardLists); lv_repeat_works.setAdapter(repeatAdapter); } else { repeatAdapter.notifyDataSetChanged(); } repeatAdapter.notifyDataSetChanged();}/**最重要的是在这个上拉的动作中添加所需要的逻辑*/@Overridepublic void onScrollStateChanged(AbsListView absListView, int i) {//判断listView上拉动作 if(isLoad && i == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) { topage++; if(topage>BaseApplication.getTotalPage()) { return; } getForwardData(topage); }}@Overridepublic void onScroll(AbsListView absListView, int i, int i1, int i2) { isLoad = ((i+i1) == i2);}//一下是用nohttp加载的数据 ,不懂的可以先去了解下nohttp这个加载数据的框架,我也只是菜鸟一枚private void getForwardData(int page) { user = SPUtils.getObject("user", User.class); Request<String> request = NoHttp.createStringRequest(BASE_HTTP_URL + "Forward/ArticalList"); request.addHeader("access-key", user.getToken()); request.add("page", page); request.add("pageSize", 10); request.add("catalogID", 2); callSever.add(this, TASK_FORWARD_LIST, request, this, true, true);}
本人菜鸟一个也是第一次记录自己的东西,有很多东西也不懂,请大家见谅!
0 0
- ListView分页加载,数据由NOHttp加载
- ListView分页加载数据
- ListView分页加载数据
- listView分页加载数据
- listView 分页加载数据
- ListView分页加载数据
- ListView 分页加载数据
- listView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- listview分页加载数据
- listView动态加载数据分页
- listView动态加载数据分页
- android ListView 数据分页加载
- spring,hibernate集成
- spring+struts的集成(第一种集成方案)
- spring+struts的集成(第二种集成方案,推荐)
- spring的2种加载方式:ContextLoaderListener和ContextLoaderPlugIn
- Java 文件上传,使用FileItem解析时,出现乱码的解决办法
- ListView分页加载,数据由NOHttp加载
- 在Struts1.x中使用net.sf.struts.saif.SAIFSpringPlugin配置Interceptor(拦截器)
- junit单元测试的java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing问题解决办法
- Java堆内存Heap与非堆内存Non-Heap简介和设置
- 如何安装配置你的Tomcat5并绑定域名
- 不同机型中使用j2me调出拨号和发短消息
- verilog中有符号与无符号变量区别
- ASP.Net Ajax框架 和ScriptMnager控件 调用Web Service
- hibernate学习1之基础工具