前言

APP日常小功能整理,别小瞧小功能的实现和积累,万一哪天使用到了,直接Ctrl+C和Ctrl+V轻松实现是不是节约了时间呢?同事也是日常Andro基础知识的复习点,哈哈哈!

首先上一波gif动态图看看效果过过瘾

示例代码使用的是viewpager,以下是viewpager详细介绍的地址可以参考着学习一下viewpager使用

http://blog.csdn.net/wangjinyu501/article/details/8169924

示例demo主逻辑代码:

package com.example.androidviewpagerphotopreview;import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;public class MainActivity extends Activity implements OnPageChangeListener {/*** 用于管理图片的滑动*/private ViewPager viewPager;/*** 显示当前图片的页数*/private TextView pageText;private int[] image = { R.drawable.one, R.drawable.two, R.drawable.three, R.drawable.four, R.drawable.five, R.drawable.six };private List<Map<String, Integer>> list = new ArrayList<Map<String, Integer>>();@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);pageText = (TextView) findViewById(R.id.page_text);viewPager = (ViewPager) findViewById(R.id.view_pager);for (int i = 0; i < image.length; i++) {Map<String, Integer> map = new HashMap<String, Integer>();map.put("image", image[i]);list.add(map);}ViewPagerAdapter adapter = new ViewPagerAdapter(MainActivity.this,list);viewPager.setAdapter(adapter);viewPager.setCurrentItem(0);viewPager.setOnPageChangeListener(this);viewPager.setEnabled(false);// 设定当前的页数和总页数pageText.setText(1 + "/" + image.length);}@Overridepublic void onPageScrollStateChanged(int arg0) {}@Overridepublic void onPageScrolled(int arg0, float arg1, int arg2) {}@Overridepublic void onPageSelected(int arg0) {// 每当页数发生改变时重新设定一遍当前的页数和总页数pageText.setText((arg0+1) + "/" + image.length);}/*** ViewPager的适配器* * @author guolin*/class ViewPagerAdapter extends PagerAdapter {List<Map<String, Integer>> list;private Context context ;public ViewPagerAdapter(Context context,List<Map<String, Integer>> lists) {this.context = context;this.list=lists;}@Overridepublic Object instantiateItem(ViewGroup container, int position) {Bitmap bitmap = BitmapFactory.decodeResource(getResources(), list.get(position).get("image"));if (bitmap == null) {bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.empty_photo);}View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.zoom_image_layout, null);ZoomImageView zoomImageView = (ZoomImageView) view.findViewById(R.id.zoom_image_view);zoomImageView.setImageBitmap(bitmap);container.addView(view);return view;}@Overridepublic int getCount() {return list.size();}@Overridepublic boolean isViewFromObject(View arg0, Object arg1) {return arg0 == arg1;}@Overridepublic void destroyItem(ViewGroup container, int position, Object object) {View view = (View) object;container.removeView(view);}}
}

文章参考地址来自郭霖大神博客:

http://blog.csdn.net/guolin_blog/article/details/12646775

代码中读取的是drawable资源文件,换取本地读取详细厉害的你们是没问题的

demo下载地址:

http://download.csdn.net/detail/qq_31546677/9916961

有新的升级功能欢迎提出!

Android 图片浏览功能简单实现(画廊效果实现,支持放大缩小)相关推荐

  1. android图片浏览功能,怎么在Android应用中实现一个网页图片浏览功能

    怎么在Android应用中实现一个网页图片浏览功能 发布时间:2020-12-05 17:28:31 来源:亿速云 阅读:80 作者:Leah 本篇文章给大家分享的是有关怎么在Android应用中实现 ...

  2. Android SmartImageView插件实现图片浏览功能

    源码下载↓↓↓ 在https://github.com网上找的小插件,实现图片浏览的简单功能,很方便. 额,简单的代码都没有几个了.. package com.example.imageview;im ...

  3. Android 图片合成:添加蒙板效果 不规则相框 透明度渐变效果的实现

    Android 图片合成:添加蒙板效果 不规则相框 透明度渐变效果的实现 暂时还未有时间开发这效果,所以先贴出来. 先贴一张效果图,这是一张手机截屏: 左上方的风景图:背景图片 右上方的人物图:前景图 ...

  4. Android 全景照片查看,Android图片处理教程之全景查看效果实现

    Android图片处理教程之全景查看效果实现 发布时间:2020-08-24 13:48:14 来源:脚本之家 阅读:104 作者:CMusketeer 前言 在玩头条的时候,现在我们会发现有很多的全 ...

  5. android 今日头条加载动画,Android 仿今日头条简单的刷新效果实例代码

    点击按钮,先自动进行下拉刷新,也可以手动刷新,刷新完后,最后就多一行数据.有四个选项卡. 前两天导师要求做一个给本科学生预定机房座位的app,出发点来自这里.做着做着遇到很多问题,都解决了.这个效果感 ...

  6. CSS动画效果无限循环放大缩小

    效果图: CSS动画效果无限循环放大缩小 <image class="anima" mode="widthFix" @click="nav&qu ...

  7. Android实现图片浏览功能(图片器原理实现)

    项目开发中做图片浏览的时候会用到这个功能,用原理实现的小工具 效果图: public class MainActivity extends AppCompatActivity implements V ...

  8. Android 图片裁剪功能实现详解(类似QQ自定义头像裁剪)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://mzh3344258.blog.51cto.com/1823534/808837 ...

  9. android 图片查看功能吗,Android仿百度图片查看功能

    我们知道,进入百度图片后,输入一个关键字后,首先看到的是很多缩略图,当我们点击某张缩略图时,我们就可以进入到大图显示页面,在大图显示页面,中包含了一个图片画廊,同时当前大图为刚刚我们点击的那张图片.现 ...

最新文章

  1. 走向通用智能的核心:任务树的建立
  2. python基础教程 下载-Python基础教程第3版中国PDF电子书免费下载
  3. 网页拼图游戏html代码,网页设计(一):拼图游戏
  4. 人工玻璃体-技术指标汇总(持续更新中)
  5. SAP Spartacus PersistFocus Directive是采取怎样的数据结构来存储focus信息的
  6. php文件上传后没有打开权限_记墨者靶机文件上传(二)
  7. LeetCode MySQL 1308. 不同性别每日分数总计(累加/变量/窗口函数)
  8. Step By Step (zz from UESTC)
  9. Netty工作笔记0070---Protobuf使用案例Codec使用
  10. Oracle修改实例名SID
  11. php if k 1,PHP实现大数字格式化成K/M/B结尾的简短形式
  12. 华为8817升级Android5,华为c8817E官方升级包大集合
  13. idea全局搜索快捷键总结
  14. jsplumb流程图demo
  15. 苹果手机服务器维护中是什么意思,苹果手机故障全解析-苹果维修服务
  16. et al和etc区别
  17. C语言判断关系R是否为自反关系
  18. 用牛顿迭代法求方程2x^3-4x^2+3x-6=0在1.5附近的解,要求误差小于1e-5
  19. TcaplusDB X 黎明觉醒,探索不止,黎明将至
  20. Android开发酒店预定预约管理系统

热门文章

  1. Vue CLI 3 配置兼容IE10
  2. uniapp 图片保存到相册
  3. linkin大话数据结构--泛型
  4. 恶贯满盈的“街头霸王”
  5. html css js
  6. 【Unity】Mod形式的Dll及AssetBundle外部加载插件
  7. 为什么总有人纠结pmp的含金量问题?
  8. 【Unity2D】实现人物攻击动画以及代码展示
  9. 树莓派3B+ 驱动开发之GPIO
  10. LeetCode 面试题 17.07婴儿名字 (并查集+字符串处理+字典序)