package com.bawei.myapplication; import android.content.Context; import android.content.Intent; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.AsyncTask; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; import com.google.gson.Gson; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.StringReader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.ArrayList; import java.util.List; import view.xlistview.XListView; import static com.nostra13.universalimageloader.core.ImageLoader.getInstance; public class MainActivity extends AppCompatActivity implements XListView.IXListViewListener { private XListView xlv; private String murl="http://v.juhe.cn/toutiao/index?key=22a108244dbb8d1f49967cd74a0c144d"; private MM ddadapter; private boolean B=true; private fangfa fa; private StringBuffer result; private List<Bean.ResultBean.DataBean> list; private ViewPager vp; private List<ImageView> imageViews=new ArrayList<>(); String[] arr={ "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2966985039,3379533726&fm=117&gp=0.jpg", "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2680794253,3431913086&fm=117&gp=0.jpg", "https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3019680159,1352977949&fm=117&gp=0.jpg" }; private LinearLayout lll; private List<Bean.ResultBean.DataBean> moreList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //初始化 initview(); xiaodian(); vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { for (int i=0;i<imageViews.size();i++){ if(i==position%arr.length){ imageViews.get(i).setImageResource(R.drawable.xianshi); }else { imageViews.get(i).setImageResource(R.drawable.yincang); } } } public void onPageScrollStateChanged(int state) { } }); vp.setAdapter(new adapter()); wangluo(); xlv.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { Intent intent=new Intent(MainActivity.this,Main2Activity.class); intent.putExtra("nana",list.get(i-1).url); startActivity(intent); } }); } private void xiaodian() { for (int i=0;i<arr.length;i++){ ImageView iv=new ImageView(this); if(i==0){ iv.setImageResource(R.drawable.xianshi); }else { iv.setImageResource(R.drawable.yincang); } LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(20,20); params.setMargins(15,0,15,0); lll.addView(iv,params); imageViews.add(iv); } } private void wangluo() { ConnectivityManager CM= (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = CM.getActiveNetworkInfo(); if(info!=null&&info.isAvailable()){ Toast.makeText(MainActivity.this,"周梦芸,有网哦",Toast.LENGTH_LONG).show(); new M().execute(murl); }else { Toast.makeText(MainActivity.this,"无网络连接",Toast.LENGTH_LONG).show(); B=false; } if(B==false){ //调用 String s=fa.select(murl); System.out.println("=============="+s); jiexi(s); } } public void jiexi(String s){ Gson gson=new Gson(); Bean bean = gson.fromJson(s, Bean.class); List<Bean.ResultBean.DataBean> data = bean.result.data; for (int i = 0; i <10; i++) { Bean.ResultBean.DataBean dataBean = data.get(i); list.add(dataBean); } if(ddadapter==null) { ddadapter = new MM(); xlv.setAdapter(ddadapter); } else { moreList.addAll(data); this.list=moreList; ddadapter.notifyDataSetChanged(); } } private void initview() { moreList = new ArrayList<>(); fa = new fangfa(MainActivity.this); xlv = (XListView) findViewById(R.id.xlistview); //------------------ View v = View.inflate(this, R.layout.activity_vp, null); lll = (LinearLayout) v.findViewById(R.id.LinearLayout); vp = (ViewPager)v.findViewById(R.id.viewpa); //------------------- xlv.addHeaderView(v); xlv.setPullLoadEnable(true); xlv.setPullRefreshEnable(true); xlv.setXListViewListener(this); list=new ArrayList<>(); } @Override public void onRefresh() { if(B==true) { list.clear(); new M().execute(murl); xlv.stopRefresh(); }else{ Toast.makeText(MainActivity.this,"无网络少侠",Toast.LENGTH_LONG).show(); } } @Override public void onLoadMore() { if(B==true) { new M().execute(murl); xlv.stopLoadMore(); }else { Toast.makeText(MainActivity.this,"无网络少侠",Toast.LENGTH_LONG).show(); } } class M extends AsyncTask<String,Integer,String>{ @Override protected String doInBackground(String... strings) { try { URL url=new URL(strings[0]); HttpURLConnection connection= (HttpURLConnection) url.openConnection(); connection.connect(); result = new StringBuffer(); InputStream in=connection.getInputStream(); BufferedReader buf=new BufferedReader(new InputStreamReader(in)); if(200==connection.getResponseCode()){ String line=null; while ((line=buf.readLine())!=null){ result.append(line); } //添加到数据库 fa.add(strings[0],result.toString()); System.out.println(result.toString()); return result.toString(); } } catch (Exception e) { e.printStackTrace(); } return null; } @Override protected void onPostExecute(String s) { jiexi(s); } } //================================================= class adapter extends PagerAdapter { @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); } @Override public Object instantiateItem(ViewGroup container, int position) { View view = View.inflate(MainActivity.this, R.layout.vp_item, null); ImageView img = view.findViewById(R.id.imageview); ImageLoader.getInstance().displayImage(arr[position], img); container.addView(view); return view; } @Override public int getCount() { return arr.length; } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } } //================================================ class MM extends BaseAdapter{ public void addList(){ } public int getCount() { return list.size(); } public Object getItem(int i) { return null; } public long getItemId(int i) { return 0; } public View getView(int i, View view, ViewGroup viewGroup) { View vvvvv=View.inflate(MainActivity.this,R.layout.xlist_item,null); ImageView iv= vvvvv.findViewById(R.id.iv); TextView tv=vvvvv.findViewById(R.id.tv); ImageLoader.getInstance().displayImage(list.get(i).thumbnail_pic_s,iv); tv.setText(list.get(i).title); return vvvvv; } } }
post请求
最新推荐文章于 2021-02-16 02:52:14 发布