首页 Android Android第三方框架之xListView的使用方法

Android第三方框架之xListView的使用方法

==最近向用xListView实现刷新效果,在网上没有找到相关的例子和方法说明。自己看了会儿demo在此留下笔记以供日后…

==最近向用xListView实现刷新效果,在网上没有找到相关的例子和方法说明。自己看了会儿demo在此留下笔记以供日后复习== 第一步:到官网下载第三方包,拷贝到自己的项目中。要注意的地方是在layout,String和drawable下也有这个控件的配置信息,这个一定要考进去。 第二步:布局文件(背景一定要设置成透明色)

<me.maxwin.view.XListView
android:id="@+id/xListView"
android:layout_width="fill_parent"
 android:layout_height="fill_parent"android:cacheColorHint="#00000000">
</me.maxwin.view.XListView>

第三步:开始编写java代码

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;

//创建XListView对象

private ArrayAdapter<String> mAdapter;

//创建适配器

private ArrayList<String> items = new ArrayList<String>();

//这个是本例中模拟的数据

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);// ~~~~~指定布局中的xListView控件~~~~~


mListView.setPullLoadEnable(true);//上拉刷新


mAdapter = new ArrayAdapter<String>(this, R.layout.list_item, items);//用模拟的数据填充系统的adapter


mListView.setAdapter(mAdapter);//指定adapter
//

mListView.setPullLoadEnable(false);
//

mListView.setPullRefreshEnable(false);//下拉刷新





mListView.setXListViewListener(this);//给xListView设置监听 ******





//给xListView条目设置监听事件


mHandler = new Handler();

}


private void geneItems() {


for (int i = 0; i != 5; ++i) {



items.add("refresh cnt"+ (++start));


}

}





//或的数据后一定要加onLoad()方法,否则刷新会一直进行,根本停不下来

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<String>(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);

}

}

需要注意的地方: 1.给XListViewListener 设置监听事件mListView.setXListViewListener(this); 2.获取数据后调用onLoad()方法 3.如果想给xListView中的条目设置监听事件和原来的ListView一样(重写了ListView的OnItemClickListen方法) ps:各位大神请轻喷,另外希望爱好编程的小伙伴能加这个群,互相帮助,共同学习。群号: 141877583

 

 

http://www.thinksaas.cn/group/topic/348557/

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

android studio查看android手机日志

android studio查看android手机日志

本文在尝试了,使用adb,eclipse查看log未果之后,使用android studio来查看unity打包的apk...
Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check t

Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check t

在android高版本开发环境(sdk 4.4)导入低版本(sdk 3.0)的工程时编译报错,报错信息如:Convers...
用Bundle和直接用Intent.putExtra(“xx”,yy)传递有什么不同

用Bundle和直接用Intent.putExtra(“xx”,yy)传递有什么不同

QQ群里一个提出来了 。。长知识了。。 Intent intent = new Intent(); intent.put...
Universal-Image-Loader解析——DisplayImageOptions的详细配置

Universal-Image-Loader解析——DisplayImageOptions的详细配置

在使用这个框架的时候,我们必须要配置一个DisplayImageOptions对象来作为ImageLoader.getI...
安卓测试环境的配置

安卓测试环境的配置

AndroidManifest.xml 配置 <uses-permission android:name="and...
返回顶部