3秒显示下一条及json数组解析
来源:互联网 发布:js跳转微信打开链接 编辑:程序博客网 时间:2024/06/16 09:07
package com.example.shipilianxi;import android.os.AsyncTask;import android.os.Handler;import android.os.Message;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.EditText;import android.widget.ImageView;import android.widget.ListView;import android.widget.TextView;import com.google.gson.Gson;import com.nostra13.universalimageloader.core.ImageLoader;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;import java.net.URLEncoder;import java.util.List;import java.util.Timer;import java.util.TimerTask;import static android.R.id.list;public class MainActivity extends AppCompatActivity { int i=0; private EditText name; private String s; private String path; private ViewPager vp;Handler h=new Handler(){ @Override public void handleMessage(Message msg) { i++; vp.setCurrentItem(i); }}; private ListView lv; private ImageView aa; private TextView textview1; private TextView textview2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); aa = (ImageView) findViewById(R.id.aa); name = (EditText) findViewById(R.id.name); vp = (ViewPager) findViewById(R.id.vp); textview1 = (TextView) findViewById(R.id.textview1); textview2 = (TextView) findViewById(R.id.textview2); jishi(); } private void jishi() { Timer timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { h.sendEmptyMessage(i); } },0,1000); } public void go(View view){ s = name.getText().toString(); AsyncTask<Void,Void,String> asyncTask =new AsyncTask<Void, Void, String>() { @Override protected String doInBackground(Void... voids) { try { path = "http://op.juhe.cn/onebox/movie/video?key=90daf4317665b4ead0f7566e3cbb169d&q="+ URLEncoder.encode(s,"utf-8"); } catch (Exception e) { e.printStackTrace(); } try { URL url = new URL(path); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setRequestMethod("GET"); urlConnection.setReadTimeout(5000); urlConnection.setConnectTimeout(5000); int responseCode = urlConnection.getResponseCode(); if (responseCode==200){ InputStream inputStream = urlConnection.getInputStream(); String s = convertStreamToString(inputStream); return s; } } catch (Exception e) { e.printStackTrace(); } return null; } @Override protected void onPostExecute(String s) { Gson gson = new Gson(); Data data = gson.fromJson(s, Data.class); //无线轮播集合 List<Data.ResultBean.VideoRecBean> video_rec = data.getResult().getVideo_rec(); //图片 String desc = data.getResult().getCover(); //标题 String title = data.getResult().getTitle(); //国际 String area = data.getResult().getArea(); //适配器 Myadapter myadapter = new Myadapter(video_rec,MainActivity.this); vp.setAdapter(myadapter); //设置图片 ImageLoader.getInstance().displayImage(desc,aa,ImageUrl.getto()); //设置标题 textview1.setText("影片名称:"+title); //设置国家 textview2.setText("国际:"+area); } }; asyncTask.execute(); } /** * 将输入流转成字符串 * * @param is * 输入流 * @return 返回字符串 */ private static String convertStreamToString(InputStream is) { BufferedReader reader = new BufferedReader(new InputStreamReader(is)); StringBuilder sb = new StringBuilder(); String line = null; try { while ((line = reader.readLine()) != null) { sb.append(line); } } catch (IOException e) { e.printStackTrace(); } finally { try { is.close(); } catch (IOException e) { e.printStackTrace(); } } return sb.toString(); }}2.适配器
package com.example.shipilianxi;import android.content.Context;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.PagerAdapter;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;import com.nostra13.universalimageloader.core.ImageLoader;import java.util.List;/** * Created by Administrator on 2017/10/11 0011. */public class Myadapter extends PagerAdapter { List<Data.ResultBean.VideoRecBean> list; Context con; public Myadapter(List<Data.ResultBean.VideoRecBean> list, Context con) { this.list = list; this.con = con; } //向一个方向能滑动n多次 @Override public int getCount() { return Integer.MAX_VALUE; // } @Override public boolean isViewFromObject(View arg0, Object arg1) { return arg0==arg1; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); } @Override public Object instantiateItem(ViewGroup container, int position) { ImageView imgv=new ImageView(con); //创建 图片控件 int index= position%list.size(); //取余数 3--0 4---1 5---2 6--0 ImageLoader.getInstance().displayImage(list.get(index).getCover(),imgv,ImageUrl.getto()); container.addView(imgv); return imgv; }}
阅读全文
0 0
- 3秒显示下一条及json数组解析
- 头条信息3秒切换以及json解析数组
- JSON数据格式及解析下
- PHP转换成JSON数组,及PHP解析JSON数组。
- Extjs 获取到json数组 前台不显示或者只显示一条的问题
- 解析json字符串 及字符串数组
- 前端js解析json对象及数组
- Jquery解析json字符串及json数组的方法
- ajax解析json数据时,date显示为秒的形式(1511352532000)
- json数组取length(一条语句)
- JSON解析及省市区在tableView上的显示
- Flex解析Json数组
- 解析json数组
- json数组解析
- JSON数组解析
- JSON解析数组
- android解析json数组
- android解析JSON数组
- 045 中值定理总结(罗尔定理,拉格朗日定理,柯西定理,泰勒公式)及型一二三四五
- 霍夫曼编码
- 数据结构之顺序队列(循环队列)
- POJ1724 ROADS 解题报告【最短路/SPFA】
- bzoj 3033: 太鼓达人 欧拉图+dfs
- 3秒显示下一条及json数组解析
- Currency Exchange POJ
- 网页自动刷新
- Centos6.9编译安装httpd2.4
- think of java 初始化基类
- Leetcode#107. Binary Tree Level Order Traversal II (queue二叉树层次遍历)
- hdoj-1072Nightmare
- 【HTML5】——Canvas
- 网络 子网 IP