package com.bwie.my_demo.activity; 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.util.Log; import android.view.MotionEvent; import android.view.View; import android.webkit.WebView; import android.widget.ImageView; import com.bwie.my_demo.R; import com.bwie.my_demo.Utils.Utils; import com.bwie.my_demo.apdater.BannerApdater; import com.bwie.my_demo.bean.Banner; import com.google.gson.Gson; import com.nostra13.universalimageloader.core.ImageLoader; import java.util.ArrayList; import java.util.List; public class WebActivity extends AppCompatActivity implements Utils.Netcallback { private WebView webview; private ImageView tv_image; private ViewPager viewpager; private String path="https://api.yunxuekeji.cn/yunxue_app_api/content/getIndexBanner/1"; private Utils utils; private List<ImageView> list=new ArrayList<>(); private Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what){ case 1: int i = viewpager.getCurrentItem(); i++; viewpager.setCurrentItem(i); handler.sendEmptyMessageDelayed(1,1000); break; } } }; private BannerApdater bapdater; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_web); webview = findViewById(R.id.web_view); tv_image = findViewById(R.id.tv_images); viewpager = findViewById(R.id.viewpager); utils = Utils.getInstance(); utils.getSeriviceData(path); utils.setNetcallback(this); //图片按压事件 viewpager.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch(event.getAction()){ case MotionEvent.ACTION_DOWN: handler.removeCallbacksAndMessages(null); break; case MotionEvent.ACTION_UP: handler.sendEmptyMessageDelayed(1,1000); break; } return false; } }); //读取url String url = getIntent().getStringExtra("url"); //判断是否为图片 if(url.endsWith(".jpg")){ tv_image.setVisibility(View.VISIBLE); ImageLoader.getInstance().displayImage(url,tv_image); }else{ webview.setVisibility(View.VISIBLE); webview.loadUrl(url); } } @Override public void onccess(String s) { Log.i("bbb",s+"ss"); Gson gson = new Gson(); Banner banner = gson.fromJson(s, Banner.class); for (Banner.BodyBean.ResultBean resultBean : banner.getBody().getResult()) { ImageView imageView = new ImageView(this); imageView.setScaleType(ImageView.ScaleType.FIT_XY); ImageLoader.getInstance().displayImage(resultBean.getBarnerPic(),imageView); list.add(imageView); } bapdater = new BannerApdater(list); viewpager.setAdapter(bapdater); handler.sendEmptyMessageDelayed(1,1000); } }
xml文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".activity.WebActivity" android:orientation="vertical" > <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="300dp" ></android.support.v4.view.ViewPager> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <WebView android:id="@+id/web_view" android:layout_width="match_parent" android:layout_height="match_parent"></WebView> <ImageView android:id="@+id/tv_images" android:layout_width="match_parent" android:layout_height="300dp" /> </LinearLayout> </LinearLayout>