PullToRefesh加 侧拉菜单
来源:互联网 发布:我的世界0.14生存js 编辑:程序博客网 时间:2024/06/03 21:32
package com.example.nm.myapplication;import android.os.AsyncTask;import android.os.Handler;import android.support.v4.widget.DrawerLayout;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.ListView;import android.widget.Toast;import com.google.gson.Gson;import com.handmark.pulltorefresh.library.PullToRefreshBase;import com.handmark.pulltorefresh.library.PullToRefreshListView;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { ListView list1; PullToRefreshListView pull; LinearLayout line; DrawerLayout draw; ImageView image; ArrayList<com.example.nm.myapplication.bean.ResultsBean> list=new ArrayList<>(); ArrayList<String> list2=new ArrayList<>(); Adapter adapter; int num=1,type=1; String url="http://gank.io/api/data/Android/10/"+num; asyn asyn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); pull=(PullToRefreshListView) findViewById(R.id.plv); list1=(ListView)findViewById(R.id.list1); line=(LinearLayout) findViewById(R.id.line); draw=(DrawerLayout) findViewById(R.id.draw); image=(ImageView) findViewById(R.id.iamge); list2.add("这是1"); list2.add("这是2"); list2.add("这是3"); list1.setAdapter(new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_expandable_list_item_1,list2)); list1.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { draw.closeDrawer(line); Toast.makeText(MainActivity.this,list2.get(position),Toast.LENGTH_SHORT).show(); } }); pull.setMode(PullToRefreshBase.Mode.BOTH); pull.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { num=1; type=1; new asyn().execute(url); } @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { num++; type=2; new asyn().execute(url); } }); new asyn().execute(url); } class asyn extends AsyncTask<String,Void,String>{ StringBuilder builder=null; @Override protected String doInBackground(String... params) { try { URL url = new URL(params[0]); HttpURLConnection con = (HttpURLConnection)url.openConnection(); con.setRequestMethod("GET"); con.setReadTimeout(5000); con.setConnectTimeout(5000); if(con.getResponseCode()==200){ InputStream stream = con.getInputStream(); InputStreamReader reader = new InputStreamReader(stream); Log.d("log","++++"+reader); BufferedReader buf = new BufferedReader(reader); String s=null; builder = new StringBuilder(); while((s=buf.readLine())!=null) { builder.append(s); } buf.close(); } } catch (Exception e) { e.printStackTrace(); } Log.d("zzz","++++"+builder.toString()); return builder.toString(); } @Override protected void onPostExecute(String s) { Gson gson = new Gson(); bean bean = gson.fromJson(s, bean.class); if(type==1){ list.clear(); list.addAll(bean.getResults()); }else{ list.addAll(bean.getResults()); } setAdapter(); new Handler().postDelayed(new Runnable() { @Override public void run() { pull.onRefreshComplete(); } },500); } } public void setAdapter(){ if(adapter==null){ adapter = new Adapter(MainActivity.this,list); pull.setAdapter(adapter); }else{ adapter.notifyDataSetChanged(); } }}
阅读全文
0 0
- PullToRefesh加 侧拉菜单
- 侧拉菜单加Fragment布局
- ios侧拉菜单
- 63.侧拉菜单
- SlidingMenu侧拉菜单
- 侧拉菜单
- 侧拉菜单
- SlidingPaneLayout:侧拉菜单
- slidingmenu侧拉菜单
- 侧拉新闻菜单
- 侧拉菜单
- 侧拉菜单
- 侧拉菜单显示
- 侧拉菜单
- 侧拉菜单
- 侧拉菜单
- 侧拉菜单(SlidingMenu)
- 侧拉菜单
- ###VMware上linux与windows互相复制与粘贴(多试几次,确实可行,安装成功; 跨系统 复制粘贴 可用了 )
- 小蓝单车 CEO 李刚:辜负了各位,对不起
- bzoj 1782: [Usaco2010 Feb]slowdown 慢慢游
- [Leetcode][python]Gas Station
- 郁闷的出纳员(treap)
- PullToRefesh加 侧拉菜单
- 如果图片在数组里的多条目
- Java9中的新特性
- 还敢说自己是TED粉吗? 连哪个演讲最爆款都不知道!
- 笔记12
- 【十八掌●武功篇】第十掌:Hive之高级知识
- JS和JSP的区别
- 把时间当作朋友 李笑来
- 百度神秘智能音箱发布,Diss市面现有产品“都是卷纸垃圾桶”