XListView的使用

来源:互联网 发布:在数据库中存储的是 编辑:程序博客网 时间:2024/04/24 16:40

使用前,把关于XlistView的文件全部放入自己的工程,添加控件,删除不该存在的id保证无报错

总共有3个.java +3个.xml文件+1个图片+string的字符串+style文件??


在布局中

<com.minle.wanminletest.view.XListView        android:id="@+id/xlistView"        android:layout_width="match_parent"        android:layout_height="match_parent">            </com.minle.wanminletest.view.XListView>


java代码中

<span style="font-size:18px;"><span style="font-size:14px;">// 构造方法 设置xlistviewprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);xlistView = (XListView) findViewById(R.id.xlistView);xlistView.setPullRefreshEnable(true);// 可以下拉刷新xlistView.setPullLoadEnable(true);// 可以上拉加载// 设置监听 下拉 上划 动作的刷新列表xlistView.setXListViewListener(new IXListViewListener() {// implements IXListViewListener后重写的方法下拉刷新@Overridepublic void onRefresh() {// 下拉的时候会触发该方法,更新数据getData(2, refresh);}// implements IXListViewListener后重写的方法上拉加载@Overridepublic void onLoadMore() {// 上拉的时候会触发该方法,更新数据getData(3, more);}});// 第一次进来 第一次获得数据加载布局getData(1, refresh);}// 获得数据,发送msg去刷新列表private void getData(final int i, String path) {// TODO Auto-generated method stubHttpUtils httpUtils = new HttpUtils();httpUtils.configCurrentHttpCacheExpiry(0);// 配置当前网络缓存到期时间 (0秒内数据那缓存数据)// 里边的泛型是 RequestCallBack<T>是得到的数据类型httpUtils.send(HttpMethod.GET, path, new RequestCallBack<String>() {@Overridepublic void onFailure(HttpException arg0, String arg1) {// 失败执行的方法}@Overridepublic void onSuccess(ResponseInfo<String> arg0) {// 成功执行方法// 获得得到的结果String result = arg0.result;Gson gson = new Gson();Data data = gson.fromJson(result, Data.class);Message msg = Message.obtain();msg.obj = data.getData();msg.what = i;handler.sendMessage(msg);}});}// handler接受信息,设置xlv的适配器Handler handler = new Handler() {private MyAdapter myAdapter;@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);// 接受信息switch (msg.what) {case 1:// 第一次进入list = (LinkedList<DataBean>) msg.obj;System.out.println(list);myAdapter = new MyAdapter(MainActivity.this, list);xlistView.setAdapter(myAdapter);break;case 2:// 下拉刷新list.clear();// 清空数据for (DataBean dataBean : (LinkedList<DataBean>) msg.obj) {// 把得到的数据添加在开头list.addFirst(dataBean);}myAdapter.notifyDataSetChanged();// 刷新loadOver();break;// 加载更多case 3:for (DataBean dataBean : (LinkedList<DataBean>) msg.obj) {// 象结尾添加list.addLast(dataBean);}// 刷新适配器myAdapter.notifyDataSetChanged();loadOver();break;default:break;}}};// 每次加载完毕后关闭动画效果,改变时间protected void loadOver() {// TODO Auto-generated method stub// 停止加载更多的动画xlistView.stopLoadMore();// 停止刷新的动画xlistView.stopRefresh();// 设置刷新时的时间xlistView.setRefreshTime(getTime());}</span></span>

//gettime()的使用

<span style="font-size:14px;">public String getTime() {SimpleDateFormat format = new SimpleDateFormat("hh:mm:ss");Date date = new Date();String time = format.format(date);return time;}</span>



0 0
原创粉丝点击