package com.bwie.test;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import com.bwie.test.adapter.MyAdapter;
import com.bwie.test.bean.ImageBean;
import com.bwie.test.bean.ImageBean.Tweets.Tweet;
import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.http.client.HttpRequest.HttpMethod;
import com.thoughtworks.xstream.XStream;
import me.maxwin.view.XListView;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
public class MainActivity extends Activity {
private XListView xl;
private List<Tweet> list;
private int index = 15;
private MyAdapter adapter;
String url = "http://www.oschina.net/action/api/tweet_list?uid=0&pageIndex=0&pageSize=";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获得控件
Initview();
// 设置允许加载
xl.setPullLoadEnable(true);
// 设置允许刷新
xl.setPullRefreshEnable(true);
// 获得数据
Initdata();
// xlistview的刷新加载事件
Xlistviewclick();
// listview的点击事件
Listvieclick();
}
private void onLoad() {
xl.stopRefresh();
xl.stopLoadMore();
// 设置日期格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");
// 获取当前系统时间
String nowTime = df.format(new Date(System.currentTimeMillis()));
// 释放时提示正在刷新时的当前时间
xl.setRefreshTime(nowTime);
}
private void Xlistviewclick() {
xl.setXListViewListener(new XListView.IXListViewListener() {
@Override
public void onRefresh() {
Initdata();
onLoad();
}
@Override
public void onLoadMore() {
Initdata1();
onLoad();
}
});
}
private void Listvieclick() {
xl.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
Intent intent = new Intent(MainActivity.this,
Main2Activity.class);
intent.putExtra("id", list.get(arg2-1).id);
startActivity(intent);
}
});
}
private void Initdata() {
HttpUtils utils = new HttpUtils();
utils.send(HttpMethod.GET, url + index, new RequestCallBack<String>() {
@Override
public void onFailure(HttpException arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onSuccess(ResponseInfo<String> arg0) {
String result = arg0.result;
Log.d("aaaaaaaaaaa", result);
XStream stream = new XStream();
stream.processAnnotations(ImageBean.class);
ImageBean bean = (ImageBean) stream.fromXML(result);
list = bean.tweets.tweet;
runOnUiThread(new Runnable() {
public void run() {
adapter = new MyAdapter(MainActivity.this, list);
xl.setAdapter(adapter);
}
});
}
});
}
private void Initdata1() {
index=index+5;
HttpUtils utils = new HttpUtils();
utils.send(HttpMethod.GET, url + index, new RequestCallBack<String>() {
@Override
public void onFailure(HttpException arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onSuccess(ResponseInfo<String> arg0) {
String result = arg0.result;
Log.d("aaaaaaaaaaa", result);
XStream stream = new XStream();
stream.processAnnotations(ImageBean.class);
ImageBean bean = (ImageBean) stream.fromXML(result);
List<Tweet> tweets= bean.tweets.tweet;
list.addAll(tweets);
runOnUiThread(new Runnable() {
public void run() {
adapter.notifyDataSetChanged();
}
});
}
});
}
private void Initview() {
xl = (XListView) findViewById(R.id.xlistview);
}
}
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import com.bwie.test.adapter.MyAdapter;
import com.bwie.test.bean.ImageBean;
import com.bwie.test.bean.ImageBean.Tweets.Tweet;
import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.http.client.HttpRequest.HttpMethod;
import com.thoughtworks.xstream.XStream;
import me.maxwin.view.XListView;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
public class MainActivity extends Activity {
private XListView xl;
private List<Tweet> list;
private int index = 15;
private MyAdapter adapter;
String url = "http://www.oschina.net/action/api/tweet_list?uid=0&pageIndex=0&pageSize=";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获得控件
Initview();
// 设置允许加载
xl.setPullLoadEnable(true);
// 设置允许刷新
xl.setPullRefreshEnable(true);
// 获得数据
Initdata();
// xlistview的刷新加载事件
Xlistviewclick();
// listview的点击事件
Listvieclick();
}
private void onLoad() {
xl.stopRefresh();
xl.stopLoadMore();
// 设置日期格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");
// 获取当前系统时间
String nowTime = df.format(new Date(System.currentTimeMillis()));
// 释放时提示正在刷新时的当前时间
xl.setRefreshTime(nowTime);
}
private void Xlistviewclick() {
xl.setXListViewListener(new XListView.IXListViewListener() {
@Override
public void onRefresh() {
Initdata();
onLoad();
}
@Override
public void onLoadMore() {
Initdata1();
onLoad();
}
});
}
private void Listvieclick() {
xl.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
Intent intent = new Intent(MainActivity.this,
Main2Activity.class);
intent.putExtra("id", list.get(arg2-1).id);
startActivity(intent);
}
});
}
private void Initdata() {
HttpUtils utils = new HttpUtils();
utils.send(HttpMethod.GET, url + index, new RequestCallBack<String>() {
@Override
public void onFailure(HttpException arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onSuccess(ResponseInfo<String> arg0) {
String result = arg0.result;
Log.d("aaaaaaaaaaa", result);
XStream stream = new XStream();
stream.processAnnotations(ImageBean.class);
ImageBean bean = (ImageBean) stream.fromXML(result);
list = bean.tweets.tweet;
runOnUiThread(new Runnable() {
public void run() {
adapter = new MyAdapter(MainActivity.this, list);
xl.setAdapter(adapter);
}
});
}
});
}
private void Initdata1() {
index=index+5;
HttpUtils utils = new HttpUtils();
utils.send(HttpMethod.GET, url + index, new RequestCallBack<String>() {
@Override
public void onFailure(HttpException arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onSuccess(ResponseInfo<String> arg0) {
String result = arg0.result;
Log.d("aaaaaaaaaaa", result);
XStream stream = new XStream();
stream.processAnnotations(ImageBean.class);
ImageBean bean = (ImageBean) stream.fromXML(result);
List<Tweet> tweets= bean.tweets.tweet;
list.addAll(tweets);
runOnUiThread(new Runnable() {
public void run() {
adapter.notifyDataSetChanged();
}
});
}
});
}
private void Initview() {
xl = (XListView) findViewById(R.id.xlistview);
}
}