设为首页 加入收藏

TOP

Android下拉刷新上拉加载简单的实现方法(六)
2015-07-16 12:55:29 来源: 作者: 【 】 浏览:4
Tags:Android 下拉 刷新 加载 简单 实现 方法
, visibleItemCount,
? ? ?totalItemCount);
? }
?}


?public void setXListViewListener(IXListViewListener l) {
? mListViewListener = l;
?}


?/**
? * you can listen ListView.OnScrollListener or this one. it will invoke
? * onXScrolling when header/footer scroll back.
? */
?public interface OnXScrollListener extends OnScrollListener {
? public void onXScrolling(View view);
?}


?/**
? * implements this interface to get refresh/load more event.
? */
?public interface IXListViewListener {
? public void onRefresh();


? public void onLoadMore();
?}
}


XListViewActivity类;主要学习这个类;调用其他的类就ok


package me.maxwin;


import java.util.ArrayList;


import me.maxwin.view.XListView;
import me.maxwin.view.XListView.IXListViewListener;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.widget.ArrayAdapter;


public class XListViewActivity extends Activity implements IXListViewListener {
?private XListView mListView;
?private ArrayAdapter mAdapter;
?private ArrayList items = new ArrayList();
?private Handler mHandler;
?private int start = 0;
?private static int refreshCnt = 0;
?/** Called when the activity is first created. */
?@Override
?public void onCreate(Bundle savedInstanceState) {
? super.onCreate(savedInstanceState);
? setContentView(R.layout.main);
? geneItems();
? mListView = (XListView) findViewById(R.id.xListView);
? mListView.setPullLoadEnable(true);
? mAdapter = new ArrayAdapter(this, R.layout.list_item, items);
? mListView.setAdapter(mAdapter);
//? mListView.setPullLoadEnable(false);
//? mListView.setPullRefreshEnable(false);
? mListView.setXListViewListener(this);
? mHandler = new Handler();
?}


?private void geneItems() {
? for (int i = 0; i != 20; ++i) {
? ?items.add("refresh cnt " + (++start));
? }
?}


?private void onLoad() {
? mListView.stopRefresh();
? mListView.stopLoadMore();
? mListView.setRefreshTime("鍒氬垰");
?}
?
?@Override
?public void onRefresh() {
? mHandler.postDelayed(new Runnable() {
? ?@Override
? ?public void run() {
? ? start = ++refreshCnt;
? ? items.clear();
? ? geneItems();
? ? // mAdapter.notifyDataSetChanged();
? ? mAdapter = new ArrayAdapter(XListViewActivity.this, R.layout.list_item, items);
? ? mListView.setAdapter(mAdapter);
? ? onLoad();
? ?}
? }, 2000);
?}


?@Override
?public void onLoadMore() {
? mHandler.postDelayed(new Runnable() {
? ?@Override
? ?public void run() {
? ? geneItems();
? ? mAdapter.notifyDataSetChanged();
? ? onLoad();
? ?}
? }, 2000);
?}


}


layout文件源码



? ? android:layout_width="fill_parent"
? ? android:layout_height="fill_parent"
? ? android:orientation="vertical" android:background="#f0f0f0">


? ? ? ? ? ? android:layout_width="fill_parent"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:text="@string/hello" />


? ? ? ? ? ? android:id="@+id/xListView"
? ? ? ? android:layout_width="fill_parent"
? ? ? ? android:layout_height="fill_parent" android:cacheColorHint="#00000000">
? ?



效果运行了就知道啦;哈哈;


首页 上一页 3 4 5 6 下一页 尾页 6/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Shell 脚本面试问题大全 下一篇微软2014校园招聘笔试试题

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: