So erstellen Sie Übergangsanimationen in Uniapp
May 22, 2023 am 10:24 AMMit der Beliebtheit mobiler Geräteanwendungen sind farbenfrohe dynamische Effekte zu einem notwendigen Element für die Entwicklung vieler Anwendungen geworden. Unter diesen ist die Übergangsanimation ein wichtiges Mittel zur Verbesserung der Benutzererfahrung. Im plattformübergreifenden Anwendungsentwicklungsframework uniapp ist es auch sehr einfach und leicht, Übergangsanimationen zu implementieren.
Übergangsanimationen in Uniapp können in zwei Kategorien unterteilt werden: native Übergänge und benutzerdefinierte Übergänge. Native Übergänge sind die Standardübergangseffekte des Systems, während benutzerdefinierte Übergänge an Ihre eigenen Bedürfnisse angepasst werden können.
1. Native Übergangsanimation
Die Implementierung der nativen Übergangsanimation in uniapp ist sehr einfach. Sie müssen nur das Attribut "animationType"
in der Datei pages.json
hinzufügen Konfigurationsdatei. Im Folgenden sind einige gängige Übergangsanimationseffekte aufgeführt: pages.json
配置文件中添加"animationType"
属性即可。以下是几种常见的转场动画效果:
- Push
在A页面中通过uni.navigateTo
跳转到B页面时,可以设置转场动画为Push:
1 2 3 4 5 |
|
效果如下:
- Pop
在B页面中通过uni.navigateBack
返回到A页面时,可以设置转场动画为Pop:
1 2 3 4 |
|
效果如下:
- Fade
可以设置转场动画为渐隐渐现的Fade效果:
1 2 3 4 5 |
|
效果如下:
- None
可以设置转场动画为无效果的None:
1 2 3 4 5 |
|
效果如下:
二、自定义转场动画
uniapp中的自定义转场动画需要结合uni-app-plus
插件和vue-router
路由组件来实现。下面就来详细介绍一下自定义转场动画的实现过程。
- 安装uni-app-plus插件
使用uni-app-plus
插件可以让我们在uniapp中使用原生的一些API和插件,其中就包括iOS中UIKit
和Android中android.view
。因此,在使用自定义转场动画时,我们需要用到这个插件。
在项目目录下执行以下命令即可安装:
1 |
|
- 修改vue-router配置
首先,我们需要在router.js
配置文件中添加路由守卫,这样我们才能捕捉到从A页面跳转到B页面的事件,从而实现自定义转场动画。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
在这段代码中,我们添加了一个路由守卫beforeEach
,当跳转到的页面配置了自定义转场动画时,就将当前页面和上一个页面的动画效果设置为左滑和右滑,这样就可以实现自定义转场动画了。
- 实现自定义转场动画
在App.vue
文件中,我们可以通过监听页面切换事件来实现自定义转场动画。首先,我们在mounted
生命周期中添加如下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
|
以上代码主要实现了以下功能:
- 检测当前设备是否为iOS设备(因为Android设备默认支持自定义转场动画),如果是则执行以下步骤。如果不是,则直接跳过本流程。
- 在路由变化之前通过
UniViewJSBridge
发送消息给原生,告诉它需要开启动画。 - 监听
UniViewJSBridge
发送的消息,当原生的动画执行结束后,将router.app.animation
赋为空字符串,代表动画效果已经结束。
然后,在<template>
标签中添加以下代码:
1 2 3 |
|
这里我们使用了动画库animate.css
来实现动画效果,因此需要在页面中引入:
1 |
|
最后,在<script>
标签中添加以下代码:
1 2 3 4 5 |
|
在进入A页面前,将transType
设置为"custom"
即可:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
这样,我们就完成了自定义转场动画的全部流程。在实际开发中,你也可以根据自己的需求来定义动画类型和动画效果。
总结
在uniapp中,实现转场动画非常简单,我们可以使用原生的转场动画,也可以通过结合uni-app-plus
插件和vue-router
- Push
uni.navigateTo
auf Seite A zu Seite B springen, können Sie Folgendes festlegen Übergangsanimation zu Push: 🎜rrreee🎜Der Effekt ist wie folgt: 🎜🎜
- Pop
uni.navigateBack
auf Seite B zu Seite A zurückkehren, Sie können die Übergangsanimation auf Pop einstellen: 🎜rrreee🎜Der Effekt ist wie folgt: 🎜🎜
- Fade


vue-router
Routing-Komponente sind implementiert. Lassen Sie uns den Implementierungsprozess der benutzerdefinierten Übergangsanimation im Detail vorstellen. 🎜- Installieren Sie das uni-app-plus-Plug-in
uni-app-plus
-Plug-in können wir einige native APIs verwenden und Plug-ins in uniapp, einschließlich UIKit
in iOS und android.view
in Android. Daher müssen wir bei der Verwendung einer benutzerdefinierten Übergangsanimation dieses Plug-In verwenden. 🎜🎜Führen Sie den folgenden Befehl im Projektverzeichnis aus, um ihn zu installieren: 🎜rrreee- Vue-Router-Konfiguration ändern
router installieren . Fügen Sie der js
-Konfigurationsdatei Routing-Guards hinzu, damit wir das Ereignis des Sprungs von Seite A zu Seite B erfassen können, um eine benutzerdefinierte Übergangsanimation zu implementieren. 🎜rrreee🎜In diesem Code haben wir einen Routing-Guard beforeEach
hinzugefügt. Wenn die Seite, zu der gesprungen werden soll, mit einer benutzerdefinierten Übergangsanimation konfiguriert ist, werden die Animationseffekte der aktuellen Seite und der vorherigen Seite festgelegt Es lässt sich nach links und nach rechts schieben, sodass Sie benutzerdefinierte Übergangsanimationen implementieren können. 🎜- Benutzerdefinierte Übergangsanimation implementieren
App.vue
können wir dies erreichen, indem wir Seitenwechselereignisse abhören. Benutzerdefiniert Übergangsanimation. Zuerst fügen wir den folgenden Code im Lebenszyklus mount
hinzu: 🎜rrreee🎜Der obige Code implementiert hauptsächlich die folgenden Funktionen: 🎜- Erkennen Sie, ob das aktuelle Gerät ein iOS-Gerät ist (weil Android-Geräte unterstützen dies standardmäßig. (Benutzerdefinierte Übergangsanimation). Wenn ja, führen Sie die folgenden Schritte aus. Wenn nicht, überspringen Sie diesen Vorgang direkt.
- Senden Sie über
UniViewJSBridge
eine Nachricht an den Einheimischen, bevor sich die Route ändert, und teilen Sie ihm mit, dass die Animation aktiviert werden muss. - Hören Sie sich die von
UniViewJSBridge
gesendete Nachricht an. Wenn die native Animation ausgeführt wird, weisen Sierouter.app.animation
einer leeren Zeichenfolge zu, um die Animation darzustellen Wirkung. Es ist vorbei.
<template>
-Tag ein: 🎜rrreee🎜Hier verwenden wir die Animationsbibliothek animate.css
, um Um einen Animationseffekt zu erzielen, muss er in die Seite eingefügt werden: 🎜rrreee🎜Fügen Sie abschließend den folgenden Code in das Tag <script>
ein: 🎜rrreee🎜Ändern Sie transType
Auf "custom"
setzen: 🎜rrreee🎜Auf diese Weise haben wir den gesamten Prozess der Anpassung der Übergangsanimation abgeschlossen. In der tatsächlichen Entwicklung können Sie auch Animationstypen und Animationseffekte entsprechend Ihren eigenen Anforderungen definieren. 🎜🎜Zusammenfassung🎜🎜In uniapp ist es sehr einfach, Übergangsanimationen zu implementieren. Wir können die native Übergangsanimation verwenden oder das Plug-in uni-app-plus
und vue kombinieren -routerRouting-Komponente zum Implementieren einer benutzerdefinierten Übergangsanimation. Während des Entwicklungsprozesses müssen wir basierend auf den tatsächlichen Anforderungen verschiedene Übergangsanimationseffekte auswählen, um das Benutzererlebnis zu verbessern. 🎜
Das obige ist der detaillierte Inhalt vonSo erstellen Sie Übergangsanimationen in Uniapp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Wie gehe ich mit lokalem Speicher in Uni-App um?

So benennen Sie Uniap -Download -Dateien um

Wie benutze ich Uni-App-Geolocation-APIs?

Wie verwalte ich den Status in Uni-App mit Vuex oder Pinia?

Wie benutze ich die Social Sharing APIs von Uni-App?

Wie mache ich API-Anfragen und behandle Daten in UNI-App?

So behandeln Sie die Dateicodierung mit UniApp -Download

Wie verwende ich die Easycom-Funktion von Uni-App für die Registrierung der automatischen Komponenten?
