.NET MAUI 导航动画

2024-04-22

如果我想在 MAUI 中为从一个页面到另一页面的过渡设置动画,我需要使用以下命令激活它true value:

await Shell.Current.GoToAsync($"//{nameof(DashboardPage)}", true);

这会动画化页面从右到左的过渡。 有没有办法反转转换 => 从左到右? 有什么建议么?我在 MAUI 文档中没有看到这个选项。有什么窍门吗?


遇到了同样的问题,我最终使用自定义导航方法创建了一个自定义 ContentPage :

<ContentPage
Opacity="0"
x:Class="MauiTest.AnimatedPage"
x:Name="AnimatedContainer"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" />

背后代码:

public partial class AnimatedPage : ContentPage
{
    public AnimatedPage()
    {
        InitializeComponent();

        AnimatedContainer.FadeTo(1, 100);
        AnimatedContainer.Content = Content;
    }

    public async Task AnimatedGoTo(string pUrl)
    {
        await AnimatedContainer.FadeTo(0, 100);
        await Shell.Current.GoToAsync(pUrl, true);
    }
}

然后在每个应该动画的页面上:

<local:AnimatedPage
    Title="NewPage1"
    x:Class="MauiTest.NewPage1"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:local="clr-namespace:MauiTest"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
    <VerticalStackLayout>
        <Label
            HorizontalOptions="Center"
            Text="Welcome to .NET MAUI!"
            VerticalOptions="Center" />
        <Button
            Clicked="Button_Clicked"
            Text="Go back" />
    </VerticalStackLayout>
</local:AnimatedPage>

背后代码:

public partial class NewPage1 : AnimatedPage
{
    public NewPage1()
    {
        InitializeComponent();
    }

    private void Button_Clicked(object sender, EventArgs e)
    {
        base.AnimatedGoTo("//main");
    }
}

以此为基础,您可以使用任何基础动画 https://learn.microsoft.com/en-us/dotnet/maui/user-interface/animation/basic?view=net-maui-7.0为您的过渡。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NET MAUI 导航动画 的相关文章

  • 使用 FtpWebRequest 将文件上传到 FTP 时,远程服务器返回错误:(550)

    I need to upload file via ftp to host The home2 travele2 path created on the root of host 我可以通过 FileZilla 程序将文件上传到主机 但是当
  • WebBrowser 控件和 JavaScript 错误

    当我使用浏览器 ie9 访问该页面时 浏览器渲染正常 当我使用 WebBrowser 控件时 出现 JavaScript 错误 我知道我可以抑制脚本错误 但我希望它们正确运行 因为它们会影响页面的渲染和功能 我怎么解决这个问题 我可以将 I
  • C# 在构建期间重命名命名空间

    我正在寻找一种在构建过程中重命名第 3 方程序集中的命名空间的方法 以及用户代码中相应的 using 语句 我搜遍了福迪的织工 但没有找到这样的东西 有一个对 ILRepack 的拉取请求可以完成确切的事情 但它似乎已经过时并且没有通过 C
  • 自动化 Windows UI 测试方法

    我们正在寻求设置自动化 UI 测试 并想知道最好的方法是什么 潜在的陷阱是什么 设置费用是否昂贵 提前致谢 B 自动化测试最大的消耗可能是时间 有很多非常昂贵的工具 但也有免费的工具 即使是昂贵的工具的成本也不太可能与正确设置自动化测试所需
  • 使用 DrawImage 方法黑屏

    我必须使用绘制位图图像绘图上下文 DrawImage http msdn microsoft com en us library ms606804 28v vs 90 29 aspx method 使用下面的代码一切正常 BitmapIma
  • JSF 2.0 隐式导航,不同的观点

    我正在寻找对 JSF 2 0 隐式导航及其如何与视图一起工作的良好解释 更准确地说 我知道从操作方法中我可以返回一个字符串 它是操作的结果 如果存在文件名与结果匹配的 JSF 视图 那么这就是隐式导航 现在 我的问题是 如果从文件夹内的视图
  • C# 单元测试:测试使用 MapPath 的方法

    首先 我知道这个问题非常接近 如何在 C 单元测试中映射路径 https stackoverflow com questions 1231860 how to mappath in a unit test in c 但我希望它有不同的解决方
  • 如何使用 System.Json 进行漂亮的打印?

    使用新的System Json 从 4 5 开始 http msdn microsoft com en us library system json 28v vs 95 29 aspx或同等的来自 Nuget 的 4 0 的 System
  • Random 并行生成数字 1 的次数超过 90% [重复]

    这个问题在这里已经有答案了 考虑以下程序 public class Program private static Random rnd new Random private static readonly int ITERATIONS 50
  • CSS 可见性动画不起作用

    我想在 CSS 可见性属性上制作基于关键帧的动画 我最初在 显示 上尝试过 但发现不支持 显示 上的动画 但支持 可见性 这个想法是让矩形的可见性不断切换 我不想使用 jquery 并且想在 CSS 中实现整个它 以下是我的代码 但它没有给
  • AutoCAD 插件开发示例

    我对开发 AutoCAD 插件感兴趣 并试图了解几种不同类型的 AutoCAD 插件文件之间的关系 随 AutoCAD 插件一起提供的托管 DLL ARX 文件 https fileinfo com extension arx附带 Auto
  • 为什么 Task.WhenAny 没有抛出预期的 TimeoutException?

    请注意以下简单代码 class Program static void Main var sw new Stopwatch sw Start try Task WhenAny RunAsync GetAwaiter GetResult ca
  • 需要重定向 .NET 应用程序的帮助

    我正在尝试让 vscode 启用统一的 c 代码完成 如下this https code visualstudio com docs other unity指南显示 我曾有一个problem https stackoverflow com
  • C#:如何在虚拟模式下有效过滤(隐藏)ListView 项目?

    C 如何在虚拟模式下有效过滤 隐藏 ListView 项目 我正在寻找一种在虚拟模式下过滤 隐藏 显示 ListView 中的项目的方法 我将我的项目缓存在列表视图项目数组中 如何有效地使其在按下过滤按钮时仅显示特定的列表视图项目 然后在按
  • 基于 Netsuite 令牌的 API 调用中的身份验证不明确

    我正在尝试使用基于令牌的身份验证对 Netsuite API 进行 SOAP 调用 我有一个从 WDSL 生成的 C 客户端 它正在发送以下请求 已替换机密
  • 如何使用 System.IO.Pipelines.PipeReader 读取 ASP.NET 应用程序中的所有 POST 正文字节?

    我正在尝试使用 Net 6 将我的 ASP NET 应用程序从 Stream 切换到 PipeReader按照微软的推荐 https youtu be 1koWtKkKb o 这是我的自定义方法 private static async T
  • 数据表到 JSON [重复]

    这个问题在这里已经有答案了 我最近需要将数据表序列化为 JSON 我现在仍然使用 Net 2 0 因此我无法在 Net 3 5 中使用 JSON 序列化器 我想这肯定是以前做过的 所以我上网查了一下found http www codepr
  • 寻找 jQuery 效果来逐渐显示隐藏的 DIV/图像

    可能我错过了一些明显的东西 但我无法弄清楚如何慢慢地显示隐藏的图像 DIV 以便它从上到下显示 如果你看一下这个 jsfiddle 你会看到我试图在 jQuery 中使用 show 来显示的图像 http jsfiddle net nick
  • C# 中的自定义按钮:如何删除悬停背景?

    我正在尝试使用 Visual Studio 2005 对我的表单 其 FormBorderStyle none 执行自定义按钮 我在链接到该按钮的 ImageList 中有我的 3 种状态按钮图像 this btnClose AutoSiz
  • 在.Net中使用ObjectCache缓存对象并设置过期时间

    我陷入了一个场景 我的代码如下 更新 它不是关于如何使用数据缓存 我已经在使用它及其工作 它是关于扩展它 以便该方法在到期时间和从外部源获取新数据之间不会进行调用 object string this GetDataFromCache ca

随机推荐

  • Silverlight 4:在 DataTemplate 中使用转换器时出现“无效的 XAML”

    也许你可以帮助我理解为什么当我尝试在 Visual Studio 2010 设计器中执行以下操作时收到未处理的异常 无效 XAML Page 我有一个Converter named DateTimeConverter将日期转换为德语日期字符
  • 在 C# .NET 中使用操作系统的文件类型映像

    我可以以某种方式使用操作系统中的文件类型图像并将其显示在我的应用程序中吗 如果您知道所需图标的文件的文件名 则可以使用ExtractAssociatedIcon http msdn microsoft com en us library s
  • “路径”参数值无效:不存在文件

    正如提到的Terraform 资源 执行应用时出现连接错误 https stackoverflow com questions 63613944 terraform resource connection error while execu
  • 自定义视图中的波纹效果

    我目前正在创建一个 Android 视图 其中当用户点击它时 我将在点击的坐标周围显示一种波纹 但我不确定该怎么做 我的第一个想法是使缓存无效并每次都使圆圈变大 但这样做似乎不合适也不高效 如果有人以前遇到过同样的问题并且愿意分享一些如何做
  • 独立启用/禁用功能区控件

    我已经多次寻找解决方案 最接近的解决方案是 Ron de Bruinexample http www rondebruin nl win s2 win013 htm但它并没有涵盖我所需要的 我想做的基本上是两件事 示例 我有 4 个按钮 G
  • 如何更改 Android 应用程序的主题?

    我正在开发一个 Android 应用程序 我想更改应用程序的颜色和主题 我怎样才能做到这一点 开发指南解释了如何应用主题和样式 http developer android com intl de guide topics ui theme
  • LUCENE:搜索与正则表达式匹配的术语

    我需要搜索 lucene 索引中的任何术语 匹配特定的正则表达式 我知道我可以使用TermsComponent在solr中 如果配置如下
  • 如何在javascript中创建没有键的json对象数组

    我想创建一个没有键的 JSON 对象数组 如何实现这一点 例如 8 0 2 20 0 2 var hh 9 var mm 8 var qty 2 var data data push hh mm qty 它给出的数据如下 hh 9 mm 8
  • 在特定 WordPress 页面上发送 404 状态代码?

    我需要在 WordPress 的特定页面上发送 404 状态代码 该页面未使用 404 php 模板 最好 我想在我的主题文件中执行此操作 而不是使用 htaccess 这是我所拥有的不起作用的东西 function my 404 if i
  • Kafka 中的“__consumer_offsets”主题是什么

    当我运行此命令时 我得到 2 个主题 我知道我创建了测试主题 但我看到了一个名为 consumer offsets 的附加主题 从名称上看 它与消费者抵消有关 但它是如何使用的呢 bin kafka topics sh list zooke
  • 停止 Spinner.js

    我正在使用 spin js http fgnass github com spin js http fgnass github com spin js 同时加载大的全宽 高图像 问题是我无法停止旋转器 stop 方法似乎不起作用 这就是我所
  • Android Web 视图中的动态进度条

    您好 我如何在其中添加页面加载进度 当页面完全加载时 进度条应该向上 我想将代码放在 case 语句中 提前致谢 这是代码 package com menu import android app Activity import androi
  • PHP 如何在没有 system() 或 exec() 的情况下 ping 服务器

    我正在尝试 ping 服务器 但我的主机被禁用exec and system 由于安全原因 是否还有其他选项可以让它工作 或者我是否必须要求我的主机启用它们 我得到的错误 警告 出于安全原因 system 已被禁用警告 出于安全原因 exe
  • 无法解决 select 语句中第 5 列的排序规则冲突

    我试图将多个字段的组合显示为一个 客户要求我这样做 我尝试了以下命令 但收到上述错误 SQL 片段 SELECT dbo VPayment 2 Serial dbo VPayment 1 Description dbo VPayment 2
  • 在Python中循环多个字典的最佳方法

    我搬字典 user name Bob age 11 place moon dob 12 12 12 user1 name John age 13 place Earth dob 12 12 12 通过加 1 循环遍历每个用户的最佳方法是什么
  • PHP 是如何工作的以及它的架构是什么?

    伙计们 最近我决定回到 PHP 并做一些比简单登录页面更复杂的事情 三年来我一直使用 Java JavaEE 进行编程 并且对 Java 应用程序的架构有很好的理解 基本上 一个虚拟机 一个简单的操作系统进程 运行称为字节码的编译代码 一个
  • Swift 优化级别破坏了 NSArray 到 Array 的转换

    以下 有点人为的 代码在以下情况下有效 快速优化级别被设定为无 Onone 默认用于调试 let nsa NSArray array foo bar let a nsa as String 但应用程序崩溃了 崩溃日志 http pasteb
  • 递归比较目录的 Shell 脚本

    我在外部硬盘驱动器上有一个几个月前的文件服务器备份 用于从那时起就出现故障的文件服务器 大部分数据已恢复到此后一直使用的临时文件服务器上 但存在一些不一致之处 我将安装外部并将其与当前数据同步 但首先我需要建立已在较新副本上更新的文件 我可
  • 如何检测用户是否为我的应用启用了 iCloud?

    我开发了一个支持 iCloud 的 iPhone 应用程序 但我面临的问题是 即使用户关闭我的应用程序的 iCloud 备份 它也会在 iCloud 上备份并反映我其他设备上的更改 所以我想知道如何我能知道我的应用程序是否启用了 iClou
  • .NET MAUI 导航动画

    如果我想在 MAUI 中为从一个页面到另一页面的过渡设置动画 我需要使用以下命令激活它true value await Shell Current GoToAsync nameof DashboardPage true 这会动画化页面从右到