您的位置:首页 > 其它

Xlistview上拉加载下拉刷新

2016-06-26 21:18 309 查看
String path=”http://www.oschina.net/action/api/news_list?catalog=1&&pageindex=”+n+”&&pageSize=30”;

package com.bwie.test;

import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import com.bwie.adapter.Myadapter;
import com.bwie.bean.News;
import com.bwie.bean.Newstype;
import com.bwie.pull.Pullparse;
import com.bwie.util.Netutil;
import com.bwie.util.Netutil2;

import me.maxwin.view.XListView;
import me.maxwin.view.XListView.IXListViewListener;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.Toast;

public class MainActivity extends Activity implements IXListViewListener {

private XListView mListView;
int i;
private List<News> list;
private List<News> list2 = new ArrayList<News>();
Handler handler = new Handler() {

public void handleMessage(android.os.Message msg) {

if (msg.arg1 == 1) {
list = (List<News>) msg.obj;

list2.addAll(list);
mListView.setAdapter(new Myadapter(MainActivity.this, list2));

}
};
};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

mListView = (XListView) findViewById(R.id.xListView);

mListView.setPullLoadEnable(true);
mListView.setPullRefreshEnable(true);
mListView.setXListViewListener(MainActivity.this);
i = 1;
shua();

mListView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {

String url = list.get(position - 1).getAuthoruid2() + "";
Toast.makeText(MainActivity.this, position + "  --- " + url, 0)
.show();
//              Intent intent = new Intent(MainActivity.this,
//                      SecondActivity.class);
//              Bundle bundle = new Bundle();
//              bundle.putString("name", url);
//              // intent.putExtra("name",url);
//              intent.putExtras(bundle);
//              startActivity(intent);

}
});
}

private void shua() {
new Thread() {
public void run() {
InputStream in = Netutil2.doget(i);
Pullparse pull = new Pullparse();
List<News> parser = pull.parser(MainActivity.this, in);
Message msg = Message.obtain();
msg.obj = parser;
msg.arg1 = 1;
handler.sendMessage(msg);

};
}.start();

}

@Override
public void onRefresh() {
list2.clear();
i = 0;
shua();
onLoad();
}

@Override
public void onLoadMore() {
i = i + 1;
shua();
onLoad();
}

private void onLoad() {
mListView.stopRefresh();
mListView.stopLoadMore();
mListView.setRefreshTime("刚刚");
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: