注意: 要提前导入三个类,两个布局,也就是防撞好的工具类
这里只是做了一个简单的死数据添加 大家可以根据需求进行改动
主方法
package com.wz.xlistviewdemo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import java.util.ArrayList;
import java.util.List;
import me.maxwin.view.XListView;
public class MainActivity extends AppCompatActivity implements XListView.IXListViewListener{
private XListView mXListView;
private List<String> list;
private ArrayAdapter<String> adapter;
private int refreshIndex = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
mXListView= (XListView) findViewById(R.id.xlistview);
list=new ArrayList<>();
for(int i=0;i<20;i++){
list.add("item---"+i);
}
adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,list);
mXListView.setXListViewListener(this);
mXListView.setPullLoadEnable(true);
mXListView.setAdapter(adapter);
}
/**
* 刷新
*/
@Override
public void onRefresh() {
new Thread(){
@Override
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
@Override
public void run() {
list.add(0,"刷新的数据---"+refreshIndex++);
adapter.notifyDataSetChanged();
stopXListView();
}
});
}
}.start();
}
private void stopXListView(){
mXListView.stopRefresh();
mXListView.stopLoadMore();
mXListView.setRefreshTime("刚刚");
}
/**
* 加载更多
*/
@Override
public void onLoadMore() {
new Thread(){
@Override
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
@Override
public void run() {
list.add("加载更多的数据---"+refreshIndex++);
adapter.notifyDataSetChanged();
stopXListView();
}
});
}
}.start();
}
}
//布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.wz.xlistviewdemo.MainActivity">
<me.maxwin.view.XListView
android:id="@+id/xlistview"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</RelativeLayout>