网上获取图片Viewpager轮播
来源:互联网 发布:java类修饰符 编辑:程序博客网 时间:2024/05/16 16:19
package animtest.com.example.e531.testtest.fragments;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import com.google.gson.Gson;
import java.util.List;
import animtest.com.example.e531.testtest.R;
import animtest.com.example.e531.testtest.adapter.MyLunBoAdapter;
import animtest.com.example.e531.testtest.bean.Result;
import animtest.com.example.e531.testtest.myinterfaces.Icallbacks;
import animtest.com.example.e531.testtest.utils.MyNetTask;
import animtest.com.example.e531.testtest.view.XListView;
import animtest.com.example.e531.testtest.adapter.MyLunBoAdapter;
import animtest.com.example.e531.testtest.bean.Result;
import animtest.com.example.e531.testtest.myinterfaces.Icallbacks;
import animtest.com.example.e531.testtest.utils.MyNetTask;
import animtest.com.example.e531.testtest.view.XListView;
/**
* Created by e531 on 2017/11/14.
*/
public class TuijianFragment extends Fragment {
* Created by e531 on 2017/11/14.
*/
public class TuijianFragment extends Fragment {
private ViewPager viewPager;
private XListView xListView;
private XListView xListView;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.tuijian, container, false);
viewPager = (ViewPager) v.findViewById(R.id.vp);
xListView = (XListView) v.findViewById(R.id.xlv);
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.tuijian, container, false);
viewPager = (ViewPager) v.findViewById(R.id.vp);
xListView = (XListView) v.findViewById(R.id.xlv);
return v;
}
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//调用网络请求工具类,获取数据
MyNetTask myNetTask=new MyNetTask(new Icallbacks() {
@Override
public void getNetdata(String jsonstr) {
//gson
Gson gson=new Gson();
Result result=gson.fromJson(jsonstr, Result.class);
MyNetTask myNetTask=new MyNetTask(new Icallbacks() {
@Override
public void getNetdata(String jsonstr) {
//gson
Gson gson=new Gson();
Result result=gson.fromJson(jsonstr, Result.class);
//listview要显示的数据
List<Result.DataEntity> listviewDatas = result.getData();
//轮播图要显示的数据
List<Result.DataScrollEntity> viewpagerDatas = result.getDataScroll();
List<Result.DataEntity> listviewDatas = result.getData();
//轮播图要显示的数据
List<Result.DataScrollEntity> viewpagerDatas = result.getDataScroll();
//为viewpager设置适配器
viewPager.setAdapter(new MyLunBoAdapter(getActivity(),viewpagerDatas));
}
});
myNetTask.execute("http://www.93.gov.cn/93app/data.do?channelId=0&startNum=0");
viewPager.setAdapter(new MyLunBoAdapter(getActivity(),viewpagerDatas));
}
});
myNetTask.execute("http://www.93.gov.cn/93app/data.do?channelId=0&startNum=0");
}
}
}
适配器
package animtest.com.example.e531.testtest.adapter;
import android.content.Context;
import android.support.v4.view.PagerAdapter;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.support.v4.view.PagerAdapter;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.util.List;
import animtest.com.example.e531.testtest.bean.Result;
import animtest.com.example.e531.testtest.utils.ImageUtils;
import animtest.com.example.e531.testtest.utils.ImageUtils;
/**
* Created by e531 on 2017/11/13.
*/
public class MyLunBoAdapter extends PagerAdapter{
* Created by e531 on 2017/11/13.
*/
public class MyLunBoAdapter extends PagerAdapter{
private Context context;
//用于存放网络图片的url地址
private List<Result.DataScrollEntity> imgUrl;
public MyLunBoAdapter(Context context, List<Result.DataScrollEntity> imgUrl) {
this.context = context;
this.imgUrl=imgUrl;
}
//返回页面的数量
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
//0~getCount返回的值-1
@Override
public Object instantiateItem(ViewGroup container, int position) {
//返回当前显示的视图
ImageView imageView = new ImageView(context);
//图片的绽放方式
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
@Override
public Object instantiateItem(ViewGroup container, int position) {
//返回当前显示的视图
ImageView imageView = new ImageView(context);
//图片的绽放方式
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
//取得图片的网络路径 imgUrl.size 5
String path=imgUrl.get((position%imgUrl.size())).getIMAGEURL();
Log.d("zzz","path:"+path);
String path=imgUrl.get((position%imgUrl.size())).getIMAGEURL();
Log.d("zzz","path:"+path);
//使用ImageLoader下载图片 注意:需要拼接路径
ImageLoader.getInstance().displayImage("http://www.93.gov.cn/"+path,
imageView, ImageUtils.getImageOptions());
ImageLoader.getInstance().displayImage("http://www.93.gov.cn/"+path,
imageView, ImageUtils.getImageOptions());
//添加到容器
container.addView(imageView);
return imageView;
}
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
}
}
}
//XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/vp"></android.support.v4.view.ViewPager>
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/vp"></android.support.v4.view.ViewPager>
<animtest.com.example.e531.testtest.view.XListView
android:id="@+id/xlv"
android:layout_height="match_parent"
android:layout_width="match_parent">
android:id="@+id/xlv"
android:layout_height="match_parent"
android:layout_width="match_parent">
</animtest.com.example.e531.testtest.view.XListView>
</LinearLayout>
阅读全文
0 0
- 网上获取图片Viewpager轮播
- 从网上获取图片实现无线轮播viewpager结合handler
- ViewPager无限轮播(网上加载图片)
- 网络获取图片viewpager无限轮播
- Viewpager轮播 网络获取图片
- ViewPager图片轮播
- 图片轮播ViewPager
- Android ViewPager从网络获取图片实现无限轮播
- Viewpager获取网络图片进行自动无限轮播
- 获取网络图片+ViewPager+自动轮播
- ViewPager实现图片轮播
- ViewPager实现图片轮播
- ViewPager 显示图片,轮播
- android 图片轮播 viewpager
- ViewPager的图片轮播
- ViewPager实现图片轮播
- ViewPager实现图片轮播
- Android ViewPager图片轮播
- dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算
- Java Json转换之JsonBinder
- 在全部播放这一步,播到哪一步,那一步按钮高亮显示,且中间手动随时切到别的步骤,动画就转去播那一步动画
- 算法设计与分析(三)动态规划(一)
- 购物车(map,一级列表,view绘制加减号)
- 网上获取图片Viewpager轮播
- 【转载】萌新也能懂的现代 JavaScript 开发
- C++学习之友元类
- Hadoop之常用命令
- Ubuntu 16.04出现:Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/
- XRecyclerView的上拉加载,下拉刷新
- 顺序查找 & 二分查找
- 休闲食品健康化,健康零食成为市场主力军
- 把.sql文件用cmd导入mysql