Android之PhotoView使用(原创)

文章大纲

一、什么是PhotoView
二、代码实战
三、项目源码下载

一、什么是PhotoView

  一款 ImageView 展示框架,支持缩放,响应手势,位于图片排行榜的第五位,PhotoView 与上面不同的是图片的展示功能,可以实现类似微信头像的放大功能,还有就是很多 App 的图片显示响应手势按压式如何是现实的,这里 PhotoView 将都可以轻松实现。

二、代码实战

1. 添加依赖

    implementation 'com.bm.photoview:library:1.4.1'

2. 添加图片资源

实际项目中,该图片可能是通过网络请求获取的。

3. 编写xml代码

<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout 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=".MainActivity"> <com.bm.library.PhotoView android:id="@+id/photoview" android:src="@drawable/test" android:layout_width="match_parent" android:layout_height="match_parent"/> </android.support.constraint.ConstraintLayout> 

3. 编写Activity代码

public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); PhotoView photoView = findViewById(R.id.photoview); photoView.enable();//设置是否允许缩放,默认是不允许的 } } 

4. 运行结果如下

三、项目源码下载

链接:https://pan.baidu.com/s/1fmEDq93ghJpc4a70mH8p9Q
密码:kkss

转载于:https://www.cnblogs.com/WUXIAOCHANG/p/10667037.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/264288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浏览器打不开html链接,win7系统ie浏览器打不开网站链接怎么办

‍‍有些使用ie浏览器的win7旗舰版用户来&#xff0c;最近发现网站中的链接打不开&#xff0c;严重影响上网体验&#xff0c;遇到这种情况我们该怎么办呢&#xff1f;会出现网站链接无法打开很有可能是ie浏览器出了问题&#xff0c;我们可以通过修复IE组件来解决&#xff0c;下…

IsNull 和 SQL语句中CASE WHEN用法

【转】IsNull 和 SQL语句中CASE WHEN用法收藏 【转】IsNull 和 SQL语句中CASE WHEN用法 1、ISNULL 使用指定的替换值替换 NULL。 语法 ISNULL ( check_expression , replacement_value ) 参数 check_expression 将被检查是…

好玩的代码(1)

看效果&#xff08;gif工具不太会用&#xff0c;效果不是很好&#xff09; 代码很简单&#xff0c;就是对sleep函数和/b的使用。 代码 1 #include <cstdio>2 #include <windows.h>3 using namespace std;4 5 int main(int argc, char **argv)6 {7 printf("…

Python基础实践-密码管理系统实例

密码管理系统实例 需求分析&#xff1a; 1.主界面&#xff08;选项&#xff1a;密码生成&#xff0c;密码查询&#xff0c;密码修改&#xff0c;密码删除&#xff09;2.密码生成&#xff1a;用户输入密码的描述&#xff0c;输入密码的长度&#xff0c;使用随机数生成一个比较复…

设计模式?!

如何解决复杂性 分解 人们面对复杂性有一个常见的做法&#xff1a;即分而治之&#xff0c;将大问题分解为多个小问题&#xff0c;将复杂问题分解为多个简单问题。 抽象 更高层次来讲&#xff0c;人们处理复杂性有一个通用的技术&#xff0c;即抽象。由于不能掌握全部的复杂对象…

html循环加载多个图片,两行代码实现图片碎片化加载

今天来实现一个图片碎片化加载效果&#xff0c;效果如下&#xff1a;我们分为 3 个步骤来实现&#xff1a;定义 html 结构拆分图片编写动画函数定义 html 结构这里只需要一个 canvas 元素就可以了。id"myCanvas"width"900"height"600"style"…

从今开始,好好学习一下算法!

ACM 进阶之路&#xff08;转&#xff09;2007年12月30日 星期日 18:20一般要做到50行以内的程序不用调试、100行以内的二分钟内调试成功.ACM主要是考算法的,主要时间是花在思考算法上&#xff0c;不是花在写程序与debug上。 下面给个计划你练练&#xff1a; 第一阶段&#xff1…

Redis(1) 简介以及linux环境下的安装

一、简介 Redis是个啥&#xff1f;它是一个key-value型的数据库&#xff0c;它是一个内存性的数据库&#xff0c;数据大量放在内存中&#xff0c;所以速度非常快&#xff0c;快到可以用来当缓存。当然它也有持久化的功能&#xff0c;可以把数据以文件的形式存在硬盘上&#xff…

premature end of file错误

在EClipse环境中变下android程序 在LayOut文件夹中建立了一个性文件new.xml 然后把main.xml的内容复制去new.xml 就提示错误"premature end of file"这是怎么回事保存一下就行了。转载于:https://blog.51cto.com/net5x/1562569

谈*静态页*(或网页*静态化*)的时候,请区分一些概念(转)

http://www.cnblogs.com/JeffreyZhao/archive/2009/07/05/talk-about-page-statilization.html “静态页”&#xff0c;在Web应用程序开发中是很常见的概念。只是我发现目前还是有相当部分的朋友&#xff0c;在这方面的存在一定的误区。因此现在独立写一篇文章&#xff0c;也想…

201671010435-王潇-实验四附加实验-项目互评

实验要求对项目博文作业进行阅读并进行评论评论要点包括&#xff1a;博文结构、博文内容、博文结构与PSP中“任务内容”列的关系、PSP中“计划共完成需要的时间”与“实际完成需要的时间”两列数据的差异化分析与原因探究。 克隆结对方项目源码到本地机器&#xff0c;利用实验提…

html form src,form.html

Amaze UI Admin index Examples欢迎你, Amaze UI 43小时前夕风色Amaze UI 的诞生&#xff0c;依托于 GitHub 及其他技术社区上一些优秀的资源&#xff1b;Amaze UI 的成长&#xff0c;则离不开用户的支持。 2016-09-21 下午 16:405天前禁言小张为了能最准确的传达所描述的问题&…

【转】删除已经存在的 TFS Workspace

删除已经存在的 TFS Workspace 分类&#xff1a; TFS2010-03-03 16:59 1239人阅读 评论(2) 收藏 举报serverpathcommandcachefilegoogle工作转移到新的TFS平台打开source control在创建workspace时出错信息为&#xff1a;The Path <local path> is already mapped in wor…

tiny4412--linux驱动学习(2)

在ubuntu下编写验证字符设备驱动 并移植到arm开发板上 1&#xff0c;准备工作 uname -r 查看电脑版本信息 apt-get install linux-source 安装相应版本的linux内核2&#xff0c;编写驱动程序 Global CharDev.c /* GlobalCharDev.c */ #include <linux/module.h>…

SQL操作全集

SQL操作全集 SQL操作全集 下列语句部分是Mssql语句&#xff0c;不可以在access中使用。 SQL分类&#xff1a; DDL—数据定义语言(CREATE&#xff0c;ALTER&#xff0c;DROP&#xff0c;DECLARE) DML—数据操纵语言(SELECT&#xff0c;DELETE&#xff0c;UPDATE&#xff0c;INSE…

osx doc to html,macos – 在OSX上安装Git HTML帮助

从中更改克隆命令地址$sudo git clone git://git.kernel.org/pub/scm/git/git.git git-doc --branch html至$sudo git clone git://git.kernel.org/pub/scm/git/git-htmldocs.git git-doc希望很快就会在Github教程中进行更改.更新&#xff1a;如果您是认为使用Xcode 4提供Apple…

select poll使用

select poll使用 2.1. 怎样管理多个连接&#xff1f;“我想同一时候监控一个以上的文件描写叙述符(fd)/连接(connection)/流(stream)&#xff0c;应该怎么办&#xff1f;” 使用 select() 或 poll() 函数。 注 意&#xff1a;select() 在BSD中被引入&#xff0c;而poll()是Sy…

如何用distinct消除重复记录的同时又能选取多个字段值?

如何用distinct消除重复记录的同时又能选取多个字段值&#xff1f; 需求是&#xff1a;我要消除name字段值重复的记录&#xff0c;同时又要得到id字段的值&#xff0c;其中id是自增字段。 select distinct name from t1 能消除重复记录&#xff0c;但只能取一个字段&#xf…

学计算机需要多少内存,电脑内存多大才够用

现在内存的价钱越来越便宜&#xff0c;很多新装机的朋友都已经在使用1GB的内存&#xff0c;而还有很多人也在给老电脑的内存升级。在升级了物理内存之后&#xff0c;如何有效设置虚拟内存才能获得最大限度的性能提升?网上流传的一些优化虚拟内存的方法真的有效吗?下面学习啦小…

2019十二省联考游记

这次省选真的经历了很多&#xff0c;虽然最后一波三折进了省队&#xff0c;但还是留下了许多遗憾。 DAY1 进考场先看T1&#xff0c;区间线性基&#xff1f;想了想大概像超级钢琴那样做&#xff1f;但trie树上怎么查区间第k大&#xff1f;一时间没想出来。咦&#xff01;暴力60分…