添加依赖:
compile 'com.github.bumptech.glide:glide:4.0.0-RC1'
compile 'com.google.code.gson:gson:2.8.1'
compile files('libs/universal-image-loader-1.9.5.jar')
compile 'org.xutils:xutils:3.5.0'
在AndroidManifest中添加网络权限:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
---------------------------------------------------------
package fragment;import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.TextView;import com.bumptech.glide.Glide;
import com.example.e.yuekaolianxi.PingDaoGuanLi;
import com.example.e.yuekaolianxi.R;
import com.example.e.yuekaolianxi.Utils;
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.util.ArrayList;
import java.util.List;import bean.Bean;public class Fragment2_ShiPing extends Fragment implements View.OnClickListener {private ViewPager viewPager;private ImageView[] points;private int count = 0;private String s;private List<Bean.DataBean.ComicsBean> list;private MyAdapter adapter;private GridView gridView;private Button pingdao;private String[] images = {"http://f2.kkmh.com/image/161129/5lw6qrrjf.webp-w750.jpg","http://f2.kkmh.com/image/160127/ord904ylf.webp-w750.jpg","http://f2.kkmh.com/image/170623/6c5i8d00h.webp-w750.jpg","http://f2.kkmh.com/image/170216/4qksgntjb.webp-w750.jpg","http://f2.kkmh.com/image/170616/miaujen7x.webp-w750.jpg"};Handler mHandler = new Handler() {@Override
        public void handleMessage(Message msg) {viewPager.setCurrentItem(count);count++;count = count % images.length;send();}};Handler mHandler1 = new Handler() {@Override
        public void handleMessage(Message msg) {s = msg.obj.toString();Gson gson = new Gson();Bean bean = gson.fromJson(s, Bean.class);list.addAll(bean.getData().getComics());adapter.notifyDataSetChanged();}};private String path = "http://api.kuaikanmanhua.com/v1/daily/comic_lists/1489334400?since=0&gender=0&sa_event=eyJwcm9qZWN0I";@Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {return inflater.inflate(R.layout.fragment2_faxian, container, false);}@Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {super.onActivityCreated(savedInstanceState);gridView = (GridView) getView().findViewById(R.id.gridView);pingdao = (Button) getView().findViewById(R.id.pingdao);initView();points = new ImageView[5];points[0] = (ImageView) getView().findViewById(R.id.image01);points[1] = (ImageView) getView().findViewById(R.id.image02);points[2] = (ImageView) getView().findViewById(R.id.image03);points[3] = (ImageView) getView().findViewById(R.id.image04);points[4] = (ImageView) getView().findViewById(R.id.image05);for (ImageView image : points) {image.setOnClickListener(this);}updatePoint(count);send();if (isNetworkAvailable(getActivity())) {loder();}list = new ArrayList<>();adapter = new MyAdapter();gridView.setAdapter(adapter);//跳转到频道管理页面pingdao.setOnClickListener(new View.OnClickListener() {@Override
            public void onClick(View v) {Intent intent = new Intent(getActivity(), PingDaoGuanLi.class);startActivity(intent);}});}private void loder() {new Thread() {@Override
            public void run() {String s = Utils.parmrs(path);Message msg = Message.obtain();msg.obj = s;mHandler1.sendMessage(msg);}}.start();}private void updatePoint(int position) {for (ImageView image : points) {image.setImageResource(R.drawable.nor);}points[position].setImageResource(R.drawable.sel);}private void initView() {viewPager = (ViewPager) getView().findViewById(R.id.viewPager);final ViewPagerAdapter adapter = new ViewPagerAdapter();viewPager.setAdapter(adapter);viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {private boolean flag;@Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {}@Override
            public void onPageSelected(int position) {updatePoint(position);}@Override
            public void onPageScrollStateChanged(int state) {}});}public void send() {new Thread() {@Override
            public void run() {mHandler.sendEmptyMessageDelayed(count, 2000);}}.start();}@Override
    public void onClick(View v) {mHandler.removeCallbacksAndMessages(null);int intex = Integer.valueOf(v.getTag().toString());viewPager.setCurrentItem(intex, false);count = intex + 1;send();}class ViewPagerAdapter extends PagerAdapter {@Override
        public int getCount() {return images.length;}@Override
        public boolean isViewFromObject(View view, Object object) {return view == object;}@Override
        public Object instantiateItem(ViewGroup container, int position) {ImageView imageView = new ImageView(getActivity());Glide.with(getActivity()).load(images[position])
//                    .placeholder(R.drawable.nor)
                    .into(imageView);container.addView(imageView);return imageView;}@Override
        public void destroyItem(ViewGroup container, int position, Object object) {container.removeView((View) object);}}public static boolean isNetworkAvailable(Context context) {ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);if (connectivity != null) {NetworkInfo info = connectivity.getActiveNetworkInfo();if (info != null && info.isConnected()) {// 当前网络是连接的
                if (info.getState() == NetworkInfo.State.CONNECTED) {// 当前所连接的网络可用
                    return true;}}}return false;}class MyAdapter extends BaseAdapter {ImageLoader imageLoader;DisplayImageOptions options;public MyAdapter() {imageLoader = ImageLoader.getInstance();ImageLoaderConfiguration config = ImageLoaderConfiguration.createDefault(getActivity());imageLoader.init(config);options = new DisplayImageOptions.Builder().showImageOnLoading(R.mipmap.ic_launcher).build();}@Override
        public int getCount() {return list.size();}@Override
        public Object getItem(int position) {return list.get(position);}@Override
        public long getItemId(int position) {return position;}@Override
        public View getView(int position, View convertView, ViewGroup parent) {Bean.DataBean.ComicsBean bean = list.get(position);Holder holder;if (convertView == null) {holder = new Holder();convertView = View.inflate(getActivity(), R.layout.fragment2_item, null);holder.image = (ImageView) convertView.findViewById(R.id.imageView);holder.tv1 = (TextView) convertView.findViewById(R.id.tv1);holder.tv2 = (TextView) convertView.findViewById(R.id.tv2);convertView.setTag(holder);} else {holder = (Holder) convertView.getTag();}holder.tv1.setText(bean.getTopic().getTitle());holder.tv2.setText(bean.getTitle());imageLoader.displayImage(bean.getTopic().getCover_image_url(), holder.image, options);

            return convertView;}}class Holder {ImageView image;TextView tv1, tv2;}@Override
    public void onDestroy() {super.onDestroy();mHandler.removeCallbacksAndMessages(null);}
}

Xutils请求数据imageloader加载图片+网络判断相关推荐

  1. Android中使用ImageLoader加载图片

    Android上让人头疼的莫过于从网络上获取图片,然后显示图片,最后还要考虑到图片的回收问题,这之间只要有任何一个环节有问题都可能直接OOM.尤其在需要展示图片的列表页面,会加载大量网络上的图片,每当 ...

  2. Ionic+Angular+Express实现前后端交互使用HttpClient发送get请求数据并加载显示(附代码下载)

    场景 Ionic介绍以及搭建环境.新建和运行项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106308166 在上面搭建起 ...

  3. android 解决listview.notifyDataSetChanged刷新时Imageloader加载图片闪烁问题

    今天,简单讲讲android里再listview调用notifyDataSetChanged刷新界面时,Imageloader加载图片会闪烁的问题. 最近,发现app里的listview图片会出现闪烁 ...

  4. ImageLoader加载图片与文字

    //main方法 import android.support.annotation.IdRes; import android.support.v4.app.Fragment; import and ...

  5. ImageLoader加载图片

    先导universal-image-loader-1.9.3包 在application配置 android:name=".MyApplication" intent权限 1 pa ...

  6. ImageLoader加载图片 默认方式和自定义方式

    public class MyApplication extends Application{ @Override public void onCreate() { // TODO Auto-gene ...

  7. html5 数据懒加载图片,Jsoup+HtmlUnit获取懒加载数据

    需要的包: org.projectlombok lombok provided 1.16.20 org.jsoup jsoup 1.8.3 net.sourceforge.htmlunit htmlu ...

  8. MVP+RecyclerView多条目+OkHttp(get和post请求方法)+属性动画+imageLoader加载图片

    //MainActivity类public class MainActivity extends AppCompatActivity implements DataView {private Recy ...

  9. java 多线程数据异步加载图片_JAVA多线程超时加载当网页图片

    先上图: 这一次没有采取正则匹配,而采取了最简单的java分割和替代方法进行筛选图片 它能够筛选如下的图片并保存到指定的文件夹 如: "http://xxxx/xxxx/xxx.jpg&qu ...

最新文章

  1. centos7.2安装mysql
  2. gilab无法解析php文件,gitlab重新设置域名后就无法访问了。
  3. python-小数点保留位数问题
  4. 超全Linux备份工具集合,满足你的所有需要!
  5. dev编译按钮是灰色_提升 50% 的编译速度!阿里零售通 App 工程提效实践
  6. java中NULL与 的区别
  7. Caffe傻瓜系列(1):数据层及参数
  8. Unity URP 内置的 ParticlesLit.shader 中的 fallback 拼写错误,导致 fallback 找不到 SimpleLit,改为 Simple Lit即可
  9. cad添加自己线性_如何自定义自己需要的CAD线型?
  10. java如何逆向工程_总结一下java如何进行逆向工程
  11. android 闹钟设置的几种方法
  12. 记录一下我的phpcms下载模板的下载列表页面不能够显示出列表页面
  13. 数学建模竞赛题目 资产清算交易策略
  14. python自动化运维脚本(仅供参考)
  15. 使用apache log解决高并发下log4j引起大量线程block问题
  16. 风靡全球的英雄联盟手游,竟然没有国服,只能教你玩国际服了...
  17. android list sort 并删除重复点_阿博的Python之路-详解List数据类型
  18. 2021年中式烹调师(中级)考试报名及中式烹调师(中级)复审模拟考试
  19. MATLAB 打开m文件的时候有如图报错怎么办
  20. Access 和vc6.0 相连,在我indows64 位系统中,出现找不到Microsoft Access Driver(*.mdb) ODBC驱动程序的安装例程。请重新安装驱动

热门文章

  1. 【推荐】数字化转型和案例及IT规划资料整理合集
  2. 现代通信原理1:绪论
  3. SQL Server :理解GAM和SGAM页 01
  4. 2023美国大学生数学建模竞赛Y题思路解析
  5. android修改默认遥控器键值,android 中遥控器键值的添加和修改
  6. Discuz 二次开发 (一) 目录结构和运行逻辑
  7. pdf转换器免费注册码
  8. 香橙派Pi5基于Qt5视频硬编码编译
  9. 暴风人工智能电视服务器连接状态,暴风TV人工智能电视X5 ECHO配置详解
  10. HTML基础教程笔记