1.PhotoView,使用介绍:

支持捏合,点击放大缩小。支持在ViewPager中翻页预览图片。

2.开发集成步骤:
1)首先,在github下载源码包
连接地址:https://github.com/chrisbanes/PhotoView,
在下载压缩包中找到library里面的src文件源码,copy在自己的项目工程目录下;
2)MainActivity.java

package com.example.chenkui.photoviewdome;import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;import java.io.IOException;
import java.io.InputStream;import photoview.PhotoView;
import photoview.PhotoViewAttacher;public class MainActivity extends AppCompatActivity {private Button imageViewBtn, photoViewBtn;private ImageView imgView;private PhotoView photoView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initView();}private void initView() {imageViewBtn = (Button) findViewById(R.id.imageViewBtn);photoViewBtn = (Button) findViewById(R.id.photoViewBtn);imgView = (ImageView) findViewById(R.id.imgView);photoView = (PhotoView) findViewById(R.id.photoView);imageViewBtn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {photoView.setVisibility(View.GONE);imgView.setVisibility(View.VISIBLE);new PhotoViewAttacher(imgView);imgView.setImageBitmap(getAssets("photo.png"));}});photoViewBtn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {imgView.setVisibility(View.GONE);photoView.setVisibility(View.VISIBLE);photoView.setImageBitmap(getAssets("photoview.jpg"));}});}private Bitmap getAssets(String assetsPath) {Bitmap bitmap = null;try {InputStream in = getAssets().open(assetsPath);bitmap = BitmapFactory.decodeStream(in);} catch (IOException e) {e.printStackTrace();}return bitmap;}}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"
><Button android:id="@+id/imageViewBtn"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="ImageView"android:textSize="34dp"/><Button android:id="@+id/photoViewBtn"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="photoView"android:textSize="34dp"/><ImageView
        android:id="@+id/imgView"android:layout_width="match_parent"android:layout_height="wrap_content"android:visibility="gone"/><photoview.PhotoView
        android:id="@+id/photoView"android:layout_width="match_parent"android:layout_height="wrap_content"android:visibility="gone"/></LinearLayout>

资源库整理源码,直接使用 http://download.csdn.net/detail/qq_26337701/9613167

android 图片缩放,github开源库,PhotoView 使用相关推荐

  1. 【Android RTMP】Android Studio 集成 x264 开源库 ( Ubuntu 交叉编译 | Android Studio 导入函数库 )

    文章目录 安卓直播推流专栏博客总结 一. x264 简介 二. x264 交叉编译 三. Android Studio 导入函数库 四. 交叉编译版本 五. GitHub 项目地址 安卓直播推流专栏博 ...

  2. android开源数据库,Android Hawk数据库 github开源项目

    Android Hawk数据库 github开源项目 Hawk 是一个很便捷的数据库  . 操作数据库仅仅需一行代码 , 能存不论什么数据类型 . github 地址: https://github. ...

  3. 针对Android平台播放器开源库NiceVieoPlayer倍速的开发

    Android平台的视频开源库可谓百花齐放,直接给出比较流行的几大框架github地址:https://github.com/search?l=Java&o=desc&q=ExoPla ...

  4. 不同格式图片相互转换的开源库分享

    不同格式图片相互转换的开源库分享 一.背景 笔者在项目的开发中,需要调用windows下的COM接口SetIconLocation来实现桌面快捷方式.而我们项目中给定的图片格式为png格式,SetIc ...

  5. github开源库(三)

    41.android-swipelistview SwipeListView是一个Android List View实现,实现了自定义ListView单元格,可通过滑动来显示扩展面板.开发者可直接登陆 ...

  6. Android常用的第三方开源库和框架

    第三方开源库和组件 一个专注于平滑滚动的Android图像加载和缓存库 https://github.com/bumptech/glide 图片缓存Universal-Image-Loader: ht ...

  7. Android下拉刷新开源库对比(转)

    安卓下拉刷新开源库对比 作者:desmond1121 目前仅比对github上star数>1500的下拉刷新开源库,在比较完成之后可能会加入其它有代表性的库. Repo Repo Owner S ...

  8. android 离线文字识别开源库 tesseract

    前言 离线文字识别开源库,本文只介绍如何使用 tess-two github地址: https://github.com/rmtheis/tess-two 导入依赖 implementation 'c ...

  9. android 自定义banner,Android项目 引入Banner开源库(轮播图)

    Banner开源库是什么? Banner 是 Android广告图片轮播控件,内部基于ViewPager2实现,Indicator和UI都可以自定义. 怎么使用 Banner 开源库? 1.在项目\a ...

最新文章

  1. Anaconda2安装时出现问题
  2. 在哪个Linux发行版上运行python,怎么在linux上运行python
  3. 朴素贝叶斯算法--过滤垃圾短信
  4. (转)Android属性设置android:noHistory=true
  5. 云图说|华为云数据复制服务 打造不一样的用户权限迁移
  6. 文件管理英文html,Directory Opus
  7. C#Const与static readonly的区别
  8. 使用 Java8的 stream对list数据去重,使用filter()过滤列表,list转map
  9. MIUI12.5安装ca证书提示失败
  10. ZigBee-CC2530单片机 - 4路硬件定时器PWM输出
  11. 用border-color 的 transparent 制作一个三角形
  12. jquery弹出层插件jquery.ColorBox.js学习
  13. 互联网计算机远程建立连接怎么回事,qq远程协助一直正在建立连接?最全分析解决方法送上!...
  14. 微信小程序——章节自测七
  15. js vue+elementui 全屏跟退出全屏功能搬砖
  16. 联想服务器出现系统恢复选项,Win10更新系统后开机提示自动修复的常规解决方案...
  17. spark实践-淘宝双十一数据分析与预测
  18. Java实现多重继承
  19. userdel: user * is currently used by process 1278
  20. windows98雨林木风_黄山第72座峰的召唤,云端上的茶园山庄,等风等雨等你来

热门文章

  1. 数组属于一种原生类吗_瘢痕有很多种类型,你的瘢痕到底属于哪一种你知道吗?...
  2. 什么是日志服务(事件日志服务)
  3. 你想要了解的黑客入门知识在这里
  4. 新东方雅思词汇(List 6 ~ List 10)
  5. 集约式发展 与 粗放式发展
  6. 前端checkbox
  7. Web前端面试指导(八):iframe有那些缺点
  8. YX2811景观装鉓驱动IC
  9. sql语句去重distinct、统计(count、sum)
  10. 关于三星设备 Activity.onDestroy() 被调用。显示“开发者选项”