微信小程序第五篇:页面弹出效果及共享元素动画

news2025/1/12 9:44:00

系列文章传送门:

微信小程序第一篇:自定义组件详解

微信小程序第二篇:七种主流通信方法详解

微信小程序第三篇:获取页面节点信息

微信小程序第四篇:生成图片并保存到手机相册

目录

一、page-caontainer 实现假页弹出

二、share-element 实现共享元素动画


首先我们先看一下要完成的效果:

 

我们要实现的效果就是点击歌单图片的时候,弹出一个假页并且伴随动画效果,当退出假页页面的时候,假页的歌单封面图会缩小到歌单页的封面图大小,并且移动到相应的位置。

一、page-caontainer 实现假页弹出

我们先看一下官网对于 page-container 的介绍:

小程序如果在页面内进行复杂的界面设计(如在页面内弹出半屏的弹窗、在页面内加载一个全屏的子页面等),用户进行返回操作会直接离开当前页面,不符合用户预期,预期应为关闭当前弹出的组件。 为此提供“假页”容器组件,效果类似于 popup 弹出层,页面内存在该容器时,当用户进行返回操作,关闭该容器不关闭页面。返回操作包括三种情形,右滑手势、安卓物理返回键和调用 navigateBack 接口。

也就是说它主要是帮助我们实现一些 popup 组件的效果,值得注意的是,position属性用来控制弹出位置,如果为 center ,则会有假页效果。如果为 top 或者 bottom 则是 popup 效果,如果为 right 就和新页面一样,是从右向左的效果。

下面我们就把需要包裹的元素都放在 page-container 标签中:

 通过 showCover 来控制假页的显示与隐藏,当单击歌单页封面图时让 showCover 为 true,在假页页面点击背景图或者返回按钮时就让 showCover 为 false,duration 属性控制动画的持续时间。这样我们就成功实现了假页的弹出效果。

二、share-element 实现共享元素动画

为什么叫共享元素动画呢,因为在歌单页和假页的图片在我们看来默认他们就是一种元素,但是代码不知道呀,所以需要 key 属性进行标记,被 share-element 标签包裹,且 key 属性相同的元素就是一对共享元素。

在歌单页包裹封面图元素:

注意:关于位置,大小等 css 属性要放在 share-element 标签上,否则不能正确实现动画效果。

在假页包裹封面图元素:

share-element 上 duration 属性控制动画时间,transform 来控制是否发生动画。因为我们只想在返回的时候发生动画,所以在进入假页的时候一直让 showAnimate 属性为 false ,当点击假页背景返回的时候再开始动画,就有了开头的效果。是不是很简单呀!

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

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

相关文章

LDP协议介绍

LDP介绍 1.LDP协议概述 LDP(Label Distribution Protocol)规定了标签分发过程中的各种消息以及相关的处理过程。LSR之间将依据本地转发表中对应于一个特定FEC的入标签、下一跳节点、出标签等信息联系在一起,从而形成标签交换路径LSP。 2.L…

【Python恶搞】Python实现祝福单身狗的恶搞项目,快发给你的怨种大兄弟 | 附源码

前言 halo,包子们上午好 咱就说,谁还没有一个单身的小伙伴呢 今天这个代码主要是为了祝福咱们单身的小伙伴 咱就说废话不多说,直接上才艺 相关文件 关注小编,私信小编领取哟! 当然别忘了一件三连哟~~ 公众号&#x…

Kali Linux 又更新了!202.4新版本有哪些变化?

Kali Linux在今年最后一个月迎来了新版本,即2022.4,上次更新是在8月份,时隔4个月,Kali linux 又有哪些新变化呢? 更新内容: Microsoft Azure - Kali 已添加到 Microsoft Azure,但目前没有图形…

阿里云效 ssh公钥配置

准备工作 通过 SSH 协议在 Git 命令行访问 Codeup,需要具备以下几点: 本机已安装Git(安装教程参见安装Git)并保证版本大于1.9(通过git --version可获取本地的版本); 本机需要安装OpenSSH客户端…

智能学习 | MATLAB实现Bee-CNN蜜蜂算法优化卷积神经网络图像分类预测

智能学习 | MATLAB实现Bee-CNN蜜蜂算法优化卷积神经网络图像分类预测 目录 智能学习 | MATLAB实现Bee-CNN蜜蜂算法优化卷积神经网络图像分类预测分类效果基本介绍模型参数程序设计参考资料分类效果 基本介绍 Bee-CNN蜜蜂算法优化卷积神经网络是一种模糊进化深度学习(优化权重和…

银行测试的优势在哪里?

为什么做金融类软件测试举个栗子,银行里的软件测试工程师。横向跟互联网公司里的测试来说,薪资相对稳定,加班少甚至基本没有,业务稳定。实在是测试类岗位中的香饽饽!一、什么是金融行业金融业是指经营金融商品的特殊行…

液晶屏显示IC 可调式三通道TFT、LCD DC/DC升压转换器AAT1118 液晶面板双通道电荷泵电源IC AAT1118

液晶屏显示IC 可调式三通道TFT、LCD DC/DC升压转换器AAT1118 TFT LCD液晶面板双通道电荷泵电源IC AAT1118 概述 AAT1118集成了一个升压调节器,两个调节电荷泵,一个关闭功能,和一个开漏电源良好的输出,使其成为TFT液晶面板供电的…

逆行而上 光照前方 | 记“齐鲁之战”11月第一单签约者—郭群策

白玉兰品牌于2018年正式启航,白玉兰也与上海市花同名,作为国内四大名花之一,更具有品牌的标识性。品牌发展至今四年,三年是疫情期,但白玉兰酒店仍然成为目前锦江酒店(中国区)体系内发展最快的品…

Linux系统中裸机定时器的基本原理

大家好,今天的话主要和大家聊一聊,如何使用定时器,完成精准的定时功能实现​。 目录 第一​:EPIT定时器基本简介 ​第二:EPIT的基本配置 ​第三:代码的具体实现 第一​:EPIT定时器基本简介 ​…

【UE4】引擎配置文件原理学习笔记

刚好遇到一个ini加载的优化。趁此机会记录学习一下UE引擎的config文件层级结构和读取流程 文章目录两个问题层级结构文件读取流程初始化流程文件读取流程文件的写入配置文件内容和GConfig结构两个问题 在看项目目录结构的时候,有没有这样的疑问: 为什么…

喜报!泛睿云国家版权局颁发的软件著作权证书

近日,泛睿云自主研发的泛睿云计算服务平台V1.0,通过中国人民共和国国家版权局权威授权,获得了计算机软件著作权登记证书,这是对泛睿云实力和研发水平的充分肯定。 软件著作权是企业核心自主知识产权,是企业的“无形资产”,是企业科技的生命力和价值所在,国家权威部门的认证将使…

微信群裂变文案微信群裂变软件

看过前几篇文章的,想必多多少少都清楚微信群裂变以及朋友圈裂变能够带来的巨大能量:低成本获客,高质量传播。那今天就来分享微信群以及微信朋友圈裂变话术,满满都是干货,新手一定要看仔细咯。今天的内容主要讲的有三点…

亲测有效!咳嗽3秒检测新冠的小·程·序;开源啦!超全的AI创作工具网站;谷歌乳腺癌AI筛查进入临床实践;根据文字生成音乐 | ShowMeAI资讯日报

👀日报合辑 | 🎡AI应用与工具大全 | 🔔公众号资料下载 | 🍩韩信子 📢 『Thinkit声音识别』亲测有效!新冠病毒咳嗽声检测小程序 一款名为“Thinkit声音识别”的微信小程序,实现通过声音识别新冠…

c#入门-可为空的注释上下文

null 一个经典的问题,字符串的“”和null有什么区别。 string s null; string s2 ""; Console.WriteLine(s); Console.WriteLine(s2);虽然看起来,他们都没有储存实际数据。 区别在于,“”相当于买了0个月饼。别人发了个空盒子过…

编译原理:词法分析

参考视频:方舟编译技术入门与实战 以及 西交冯博琴老师的相关视频 编译的过程包括 词法分析(分析程序符号)、语法分析(分析语法单位)、中间代码生成、代码优化和目标代码生成。该架构自1960s之后基本未变。 一、编译过…

FFMPEG读取本地文件推流到RTMP服务器!

前言: 今天我们再来分享一个开源代码项目,这个代码项目是通过读取本地的TS文件,然后推流到RTMP服务器上面。一、项目框图和运行效果: 1.1.项目的框图:1.2.运行效果:二、模块的讲解: 2.1.初始化文…

做了6年的软件测试了,想提升一下自己,学一下自动化测试,但是没有方向,怎么办?

前言 最后后台一位粉丝和我说做了6年的功能测试,在职场没有突破涨薪,陷入了一个迷茫的境地,想学自动化测试但是又不知道从哪里入手!!!今天静姐就带这位粉丝盘一盘自动化测试如何进阶?&#xff…

Python OpenCV 单目相机标定、坐标转换相关代码(包括鱼眼相机)

前言 本文不讲原理,只关注代码,有很多博客是讲原理的,但是代码最多到畸变矫正就结束了,实际上就是到 OpenCV 官方示例涉及的部分。   在官方示例中使用黑白棋盘格求解了相机的内外参和畸变系数,并对图像做了畸变矫正…

多态实现原理

学习Java的时候就已经学习了多态但是对于多态的原理还是不是很明白所以写下这篇文章来记录一下 如果后面有新的理解也继续添加到本页面 什么是多态 多态是面向对象编程里面的概念,一个接口的多种实现不同的实现方式,即为多态 这里的接口不应理解得太死板…