微信精选案例HttpClient post请求
来源:互联网 发布:js base64 乱码 编辑:程序博客网 时间:2024/05/07 11:22
public class MainActivity extends Activity { List<MyData> listall = new ArrayList<Bean.MyData>(); private ListView lv; private ProgressBar pb1; private int index = 1; private ProgressBar pb2; MyAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); pb1.setVisibility(pb1.VISIBLE); // 获取网络数据 getSouse(); } private void init() { lv = (ListView) findViewById(R.id.lv); lv.setOnScrollListener(new OnScrollListener() { @Override public void onScrollStateChanged(AbsListView view, int scrollState) { if (scrollState == OnScrollListener.SCROLL_STATE_IDLE && lv.getLastVisiblePosition() == listall.size() - 1) { index++; getSouse(); } } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { // TODO Auto-generated method stub } }); lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { MyData data = listall.get(position); Intent intent=new Intent(MainActivity.this,Main2Activity.class); intent.putExtra("url",data.url); startActivity(intent); } }); pb1 = (ProgressBar) findViewById(R.id.pb1); pb2 = (ProgressBar) findViewById(R.id.pb2); } // 获取网络资源 private void getSouse() { AsyncTask<Void, Void, String> as = new AsyncTask<Void, Void, String>() { @Override protected void onPreExecute() { // 显示进度条 pb2.setVisibility(pb2.VISIBLE); super.onPreExecute(); } @Override protected void onPostExecute(String result) { String json = result; Gson gson = new Gson(); Bean bean = gson.fromJson(json, Bean.class); List<MyData> list = bean.result.list; System.out.println(list); listall.addAll(list); if (adapter == null) { adapter = new MyAdapter(listall, MainActivity.this); lv.setAdapter(adapter); pb2.setVisibility(pb2.GONE); pb1.setVisibility(pb1.GONE); } else { adapter.notifyDataSetChanged(); pb2.setVisibility(pb2.GONE); } super.onPostExecute(result); } @Override protected String doInBackground(Void... params) { try { HttpClient httpClient = new DefaultHttpClient(); HttpPost post = new HttpPost( "http://v.juhe.cn/weixin/query"); List<BasicNameValuePair> parameters = new ArrayList<BasicNameValuePair>(); parameters.add(new BasicNameValuePair("key", "07722feab9b1643834ae1ca387eea40b")); parameters.add(new BasicNameValuePair("pno", index + "")); HttpEntity entity = new UrlEncodedFormEntity(parameters, "utf-8"); post.setEntity(entity); HttpResponse response = httpClient.execute(post); if (response.getStatusLine().getStatusCode() == 200) { InputStream is = response.getEntity().getContent(); ByteArrayOutputStream os = new ByteArrayOutputStream(); byte[] b = new byte[1024]; int len = 0; while ((len = is.read(b)) != -1) { os.write(b, 0, len); } String str = os.toString("utf-8"); return str; } } catch (Exception e) { e.printStackTrace(); } return null; } }; // 执行 as.execute(); }}
适配器
public class MyAdapter extends BaseAdapter { private List<MyData> list; private Context context; public MyAdapter(List<MyData> list, Context context) { super(); this.list = list; this.context = context; } @Override public int getCount() { // TODO Auto-generated method stub return list.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return list.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { MyData data = list.get(position); ViewHolder vh; if (convertView==null) { vh=new ViewHolder(); convertView=View.inflate(context,R.layout.item,null); vh.image=(ImageView) convertView.findViewById(R.id.image); vh.tv1=(TextView) convertView.findViewById(R.id.tv1); vh.tv2=(TextView) convertView.findViewById(R.id.tv2); convertView.setTag(vh); } else{ vh=(ViewHolder) convertView.getTag(); } BitmapUtils utils=new BitmapUtils(context); utils.display(vh.image,data.firstImg); vh.tv1.setText(data.title); vh.tv2.setText(data.source); return convertView; } class ViewHolder { ImageView image; TextView tv1; TextView tv2; }}
1 0
- 微信精选案例HttpClient post请求
- Java HttpClient 如何伪装微信浏览器进行POST请求
- Java 微信开发(三) 封装httpclient get post 请求
- HttpClient--HttpClient的Post请求
- Httpclient发送POST请求
- httpClient发送post请求
- HttpClient发起post请求
- HttpClient post 请求实例
- HttpClient发起POST请求
- httpclient Post请求
- httpclient post请求
- HttpClient Post请求
- httpclient post/set请求
- HttpClient发送post请求
- httpclient发送post请求
- httpClient post/get请求。
- httpClient post请求设置
- HttpClient get,Post请求
- [图形学] 简化的bsp树
- 【31.95%】【CF 714B】Filya and Homework
- loadView、viewDidLoad及viewDidUnload的关系
- LeetCode 136. Single Number 解题报告
- HHUOJ 1017 最小差(01背包)
- 微信精选案例HttpClient post请求
- css总结(1) -文字垂直居中、内标签宽、clear
- 启程
- 未来的路很长,我们踏踏实实走进BAT
- 状态机在程序设计中用处
- Mac下搭建Discuz
- LCS最大公共子序列O(nlogn)算法
- HDU1892-See you~
- 【39.68%】【CF 714 C】Filya and Homework