android viewpager画廊,Android使用ViewPager实现画廊效果

按照国际惯例,先上效果图

8d85f0bfd173

其实这跟普通的ViewPager原理都一样,需要改变的地方就是:

1.增加滑进和滑出的动画效果

2.缩小ViewPager的大小,给屏幕上留出上一张和下一张视图的空间

布局文件:

xmlns:android="http://schemas.android.com/apk/res/android"

android:clipChildren="false"

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/shareImg"

android:layout_width="match_parent"

android:layout_marginHorizontal="60dp"

android:layout_height="wrap_content"

android:layout_centerInParent="true"

android:clipChildren="false"

android:layout_above="@+id/shareOptions"

/>

这里只贴出了需要用到的部分

注意viewpager自身和父布局都需要加上 android:clipChildren="false" 属性

网上大神解释为:在子View进行绘制时不裁切它们的显示范围

接下来是动画部分:

这里需要写个继承自ViewPager.PageTransformer的类,并重写transformPage方法

public class ScaleAlphaPageTransformerimplements ViewPager.PageTransformer{

public static final float MAX_SCALE =1.0f;

public static final float MIN_SCALE =0.8f;

public static final float MAX_ALPHA =1.0f;

public static final float MIN_ALPHA =0.7f;

private boolean alpha =true;

private boolean scale =true;

@Override

public void transformPage(View page,float position) {

if (position < -1) {

position = -1;

}else if (position >1) {

position =1;

}

float tempScale = position <0 ?1 + position :1 - position;

if(scale){

float slope = (MAX_SCALE -MIN_SCALE) /1;

//一个公式

float scaleValue =MIN_SCALE + tempScale * slope;

page.setScaleX(scaleValue);

page.setScaleY(scaleValue);

}

if(alpha){

//模糊

float alope = (MAX_ALPHA -MIN_ALPHA) /1;

float alphaValue =MIN_ALPHA + tempScale * alope;

page.setAlpha(alphaValue);

}

}

/***

* 设置是否模糊和改变大小

* @param alpha

* @param scale

*/

public void setType(boolean alpha,boolean scale){

this.alpha = alpha;

this.scale = scale;

}

}

最后就是调用了

ScaleAlphaPageTransformer scaleAlphaPageTransformer =new ScaleAlphaPageTransformer();

scaleAlphaPageTransformer.setType(true,true);

viewPager.setPageTransformer(true,scaleAlphaPageTransformer);

viewPager.setPageMargin(2);

viewPager.setOffscreenPageLimit(3);

ShareImgAdapter shareImgAdapter =new ShareImgAdapter(listOfImg);

viewPager.setAdapter(shareImgAdapter);

完成

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

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

相关文章

excel 区间人数柱状图_Excel中,区间统计的3种技巧都不掌握,那就真的OUt了!

点击上方"Excel函数公式"免费订阅 Excel的最大功能在于数据的分析与处理&#xff0c;在数据分析和处理中&#xff0c;区间统计是非常广泛的&#xff0c;各位亲是怎么操作的呢&#xff1f;如果还不掌握&#xff0c;且看小编给大家带来的“区间统计”的3种应用技巧。一…

nova8pro能升级鸿蒙吗,华为将有48款产品可以升级到鸿蒙 2.0系统

网站Huawei Central最近报道称&#xff0c;将有48款产品可以升级到鸿蒙 2.0系统&#xff0c;包括华为及其子品牌Honor的智能手机&#xff0c;平板电脑和智能手表。 Huawei Central名单中有3款未发布的手机Huawei Nova 8和Nova 8 Pro&#xff0c;以及Honor V40。 它们将在推出时…

patran如何看屈曲因子_校准证书中的修正值、修正因子,你真的会用吗?

一些仪器设备校准回来会产生修正值/修正因子&#xff0c;然而很多实验室小伙伴们不懂得如何正确使用这些修正值/修正因子&#xff1f;为帮助广大实验室能规范正确地使用修正值/修正因子&#xff0c;小析姐 特为大家推送这篇文章~【概念】修正值&#xff1a;为修正某一测量器具的…

android 生成debug.keystore,android sdk 如何重新生成debug.keystore

1)首先你要确定你安装的JDK位置&#xff0c;Windows->Preferences->Java->Installed JREs,你可以看到是Jre的location,再在dos cmd模式下查看你当前系统的path是否已经包含了。如果没有包含添加到当前环境参数中。因为我们要用到的keytool命令在这个目录下呀。2)接下来…

已知a类被打包在packagea_2021考研干货:199管理类联考综合逻辑归纳习题(1)

199管理类联考综合中的逻辑&#xff0c;所占分值为60分。因此&#xff0c;备考2021考研199管综的考生们&#xff0c;需要在内容上面多下功夫复习。题目&#xff1a;小张夫妇想买套房子&#xff0c;经他一番挑选&#xff0c;目标锁定某座楼的3套房。已知&#xff1a;这三套房子中…

凯立德手机导航(家园版) v5.3 for android,凯立德手机导航(家园版)android平台

感谢您阅读凯立德手机导航产品下载安装教程&#xff0c;请根据以下步骤进行操作。下载安装过程完成后&#xff0c;您将体验到更为专业的凯立德导航服务。安装前请认真阅读以下文字&#xff1a;1、为了减少导航产品所占容量&#xff0c;本导航产品分主程序和地图数据两部分。下载…

android性能优化 掘金,Android性能优化之内存泄漏

内存泄漏&#xff1a;内存单元使用完成后未释放&#xff0c;未回收。理解强弱引用和gc垃圾回收机制后&#xff0c;会更好的理解内存泄漏问题。在目前的Android项目中&#xff0c;内存泄漏是无法避免的&#xff0c;在编写代码时要是否产生了内存泄漏。内存泄露中要注意对象、变量…

clocks_per_sec 时间不正确_你该拥有的不只是护肤品,还有正确护肤时间表

同样是护肤&#xff0c;为什么你的效果始终不如意&#xff1f;其实&#xff0c;不同的时间段&#xff0c;皮肤各司其职&#xff0c;都有着不同的“任务”和“状态”。快跟芭姐一起了解一下这份《皮肤时间表》&#xff0c;看看如何让护肤效果事半功倍吧&#xff01;清洁是唤醒肌…

jdbc连接数据scanip_JDBC连接数据库的四种方式:DriverManager,DataSource,DBCP,C3P0

方法1&#xff1a;使用java.sql.DriverManager类驱动管理器类&#xff0c;用于管理所有注册的驱动程序。(注&#xff1a;DataSource 接口是 JDBC 2.0 API 中的新增内容&#xff0c;它提供了连接到数据源的另一种方法。使用 DataSource 对象是连接到数据源的首选方法。)常用的两…

HTML下拉菜单怎么做成横向,css导航条横向带下拉菜单

cssdiv导航下拉二级菜单竖排效果如何改为横排&#xff1f;&#xff0c;在“下一站”有三个二级竖排菜单&#xff0c;如何能变为横排&#xff1f;困扰了我一天了&#xff0c;让二级菜单变成一行&#xff0c;只需要在竖排的效果上&#xff0c;让二级菜单都浮动起来&#xff0c;这…

java移动端接口测试_使用java如何进行接口测试

关于接口测试, 我们之前介绍过很多方法了, 有postman, soapUI, Jmeter等, 他们各有优势和劣势, 今天和大家分享的是如何用java TestNG来实现接口测试.开始测试之前需要如下准备工作:1. IDE环境, Intellij 或者eclipse, 个人推荐使用Intellij.2. JKD1.8 以上3. Maven 环境 Maven…

html5折叠卡片,基于HTML5折叠卡片式下拉菜单代码

基于HTML5折叠卡片式下拉菜单代码。这是一款基于jQueryCSS3HTML5实现的下拉列表框特效代码。效果图如下&#xff1a;实现的代码。hmtl代码&#xff1a;爱编程爱编程 jQuery特效 CSS3特效 HTML5特效 音效下载 flash动画js代码&#xff1a;(function ($) {var cards $(.card-dro…

fastexcel读取excel追加写入sheet页_python笔记52:python操作excel

主要内容&#xff1a;小目标&#xff1a;掌握excel模块主要内容&#xff1a;excel相关模块&#xff0c;openpyxl安装使用如果看完这篇文章&#xff0c;你还是弄不明excel相关操作&#xff1b; 你来找我&#xff0c;我保证不打你&#xff0c;我给你发100的大红包。1. excel相关操…

HTML音乐播放没声音,网页没有声音但系统显示有声音怎么回事?如何解决?

网友提问&#xff1a;为什么网页没有声音&#xff0c;除了迅雷高清在线影院的视频有声音和本已经下载的歌或视频有声音外&#xff0c;其他网页都没有声音&#xff01;就是网页没声音&#xff0c;其他一切正常&#xff01;网页没有声音但系统显示有声音&#xff1b;网页在线视频…

html层次选择器例题,详解强大的jQuery选择器之基本选择器、层次选择器

jQuery允许开发者使用从CSS1到CSS3几乎所有的选择器&#xff0c;以及jQuery独创的高级而复杂的选择器。另外还可以加入插件使其支持XPath选择器&#xff0c;甚至开发者可以编写属于自己的选择器(即选择器插件&#xff0c;参考上篇&#xff1a;jQuery插件原来如此简单——jQuery…

cesium 经纬度绘制点_炫酷大屏地图自定义绘制(一)

现在数据中台的概念炒的火热&#xff0c;那在收集到数据后就要想办法去设计大屏&#xff0c;可视化展现。往往大屏都会涉及到地理位置的显示。对于常见的省市区&#xff0c;网上都已经提供了地理json数据&#xff0c;那对于需要定制化的我们要怎么处理呢&#xff1f;首先我们还…

关于python语言和人工智能下哪个说法不正确_“在资源管理器”窗口中,文件夹图标左侧有“...

【单选题】表示串行数据传输速率的指标为:___。【单选题】串行口工作在方式0时,其波特率:___。【简答题】发布混合碱含量的测定三个锥形瓶的滴定终点颜色【简答题】将自己做的三个锥形瓶的滴定终点颜色拍照发上来(三个瓶子并排摆在白色托盘中)【单选题】Guido van Rossum正式对…

html瞄点四大名著有图片,四大名著手抄报图片图和文字资料

四大名著之【三国演义】罗贯中(1330年一1400年之间)&#xff0c;名本&#xff0c;号湖海散人&#xff0c;明代通俗小说家。他的籍贯一说是太原(今山西)&#xff0c;一说是钱塘(今浙江杭州)&#xff0c;不可确考。据传说&#xff0c;罗贯中曾充任过元末农民起义军张士诚的幕客&a…

shell181网格划分_ANSYS软件中SHELL181单元参数详解(1)

SHELL181单元说明SHELL181单元适合对薄的到具有一定厚度的壳体结构进行分析。它是一个4结点单元&#xff0c;每个结点具有6个自由度&#xff1a;x,y,z方向的位移自由度和绕X,Y,Z轴的转动自由度。(如果应用了薄膜选项的话&#xff0c;那该单元则只有移动自由度了)。简并三角形选…

怎样查询2021高考模拟成绩,2021年高三一模二模三模哪个成绩更接近高考成绩,看看网友是怎么评论...

2021年高三一模二模三模哪个成绩更接近高考成绩虽然大多数人认为一模的成绩最接近高考&#xff0c;基本定型了&#xff0c;但高考变幻莫测&#xff0c;成绩很有可能发生变化&#xff0c;成绩升降都是很难说的。高三一模之后成绩也没有定型&#xff0c;还有最后逆转的机会。高考…