Xlistview
来源:互联网 发布:网络授课系统 编辑:程序博客网 时间:2024/06/05 15:04
package zhangchaofei.rikao0822;import android.app.Activity;import android.os.AsyncTask;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.webkit.WebView;import android.widget.BaseAdapter;import android.widget.TextView;import com.google.gson.Gson;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import java.util.ArrayList;import java.util.List;public class MainActivity extends Activity implements XListView.IXListViewListener{private XListView mylist; private List<Bean.ResultsBean> list=new ArrayList<>(); private int limit =5; private int page=1; private Mybase adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mylist=findViewById(R.id.mylist); adapter=new Mybase(); init("http://gank.io/api/history/content/"+limit+"/"+page); mylist.setPullRefreshEnable(true); mylist.setPullLoadEnable(true); mylist.setXListViewListener(this); mylist.setAdapter(adapter); } private void init(String path) { new AsyncTask<String, Void, String>() { @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson=new Gson(); Bean bean=gson.fromJson(s,Bean.class); list=bean.getResults(); if (list!=null&&list.size()>0){ if (page>1){ adapter.addData(list); }else{ adapter.upData(list); } mylist.stopRefresh(); mylist.stopLoadMore(); } } @Override protected String doInBackground(String... strings) { String path=strings[0]; try { URL url=new URL(path); HttpURLConnection con= (HttpURLConnection) url.openConnection(); con.setRequestMethod("GET"); con.setConnectTimeout(3000); int code=con.getResponseCode(); if (code==200){ InputStream is=con.getInputStream(); String json=Toos.work(is); System.out.println(json); return json; } } catch (Exception e) { e.printStackTrace(); } return null; } }.execute(path); } @Override public void onRefresh() { page=1; init("http://gank.io/api/history/content/"+limit+"/"+page); } @Override public void onLoadMore() { page++; init("http://gank.io/api/history/content/"+limit+"/"+page); } class Mybase extends BaseAdapter{ private List<Bean.ResultsBean> beanList=new ArrayList<>(); public void addData(List<Bean.ResultsBean> beanList){ this.beanList.addAll(beanList); notifyDataSetChanged(); } public void upData(List<Bean.ResultsBean> beanList){ this.beanList.clear(); addData(beanList); } @Override public int getCount() { return beanList.size(); } @Override public Object getItem(int i) { return beanList.get(i); } @Override public long getItemId(int i) { return i; } @Override public View getView(int i, View view, ViewGroup viewGroup) { ViewHolder holder; if (view==null){ holder=new ViewHolder(); view=View.inflate(MainActivity.this,R.layout.item,null); holder.te1=view.findViewById(R.id.textView); holder.web=view.findViewById(R.id.web); view.setTag(holder); }else{ holder= (ViewHolder) view.getTag(); } Bean.ResultsBean resultsBean=beanList.get(i); if (resultsBean.getTitle()!=null){ holder.te1.setText(resultsBean.getTitle()); } holder.web.setVisibility(View.GONE); return view; } class ViewHolder{ TextView te1; WebView web; } }}
阅读全文
0 0
- XListView
- XListView
- Xlistview
- XListView
- xListView
- XListView
- xlistview
- xListView
- XlistView
- xlistview
- xlistview
- XListView
- xlistview
- xListview
- XListView
- XListView
- xlistview
- xlistview
- 2PC到3PC到Paxos到Raft到ISR
- tarjan算法应用 割点 桥 双连通分量
- Qemu-kvm的网络模式
- [POJ](3258)River Hopscotch ---二分查找+贪心(查找+贪心)
- Maven出错-Missing artifact org.apache.openejb:openejb-core:jar:4.1.0-SNAPSHOT:test
- Xlistview
- Python3之命名关键字参数
- js倒计时自动跳转
- Big Data 及 Hadoop
- spark学习-16-Spark的Map()和FlatMap()函数使用
- webstorm项目下文件夹消失
- 《简明python教程》笔记一
- Java HashMap 如何正确遍历并删除元素
- MongoDB数据库安装完成之后的配置