Navigate 和 Back 函数
我们来了解如何向 Navigate 和 Back 函数添加参数,以增强 Power Apps 应用中的用户界面。 在语法中,方括号表示可选参数。
Navigate 函数
下面是 Navigate 语法的分解:
Navigate(ScreenName, ScreenTransition.TransitionType, {ContextRecord: NewValue})
ScreenName(必填):要显示的屏幕。ScreenTransition(可选):要在当前屏幕和下一个屏幕之间使用的视觉对象转换。 如果省略,则默认为ScreenTransition.None。ContextRecord(可选):包含一个或多个上下文变量名称及其值的记录。 此记录在新屏幕上设置或更新上下文变量。
您必须指定第一个参数以指示要导航到的屏幕。 第二个参数可以选择控制转换效果。 第三个参数让您可以将上下文值传递到新屏幕。
Back 函数
下面是 Back 函数的语法:
Back([ScreenTransition])
-
ScreenTransition(可选)- 返回到上一屏幕时使用的视觉对象转换。 默认情况下,这是用于到达当前屏幕的转换的反向。
Back 函数必须包含括号:Back()。
Back 函数将用户返回到之前查看的屏幕。 Power Apps 会保留导航历史记录,包括屏幕转换。 使用 Back 时,Power Apps 反转转换(除非定义了特定转换)。
屏幕转换
屏幕转换可与 Navigate 和 Back 函数结合使用。 可用选项包括:
ScreenTransition.Cover:新屏幕从右向左滑入,覆盖当前屏幕。ScreenTransition.CoverRight:新屏幕从左向右滑入。ScreenTransition.Fade:当前屏幕淡出,显示新屏幕。ScreenTransition.None(默认值)立即切换到新屏幕。ScreenTransition.UnCover:当前屏幕从右向左滑出。ScreenTransition.UnCoverRight:当前屏幕从左向右滑出。
示例
下表提供一些使用 Navigate 和 Back 转换的公式示例。 表中的几个 Navigate 示例中还包括一些 UpdateContextRecord 参数,以便您可以看到它们在应用中的效果。
| 公式 | 描述 | 结果 |
|---|---|---|
Navigate(Details) |
导航到 Details 屏幕,而无需转换或更改上下文。 |
Details 屏幕立即显示。 |
Navigate(Details, ScreenTransition.Fade) |
使用 Fade 转换导航到 Details 屏幕。 |
当前屏幕淡出以显示 Details 屏幕。 |
Navigate(Details, ScreenTransition.Fade, {ID: 12}) |
添加淡入淡出转换并设置 ID 上下文变量。 |
显示详细信息屏幕,其中 ID 设置为 12。 |
Navigate(Details, ScreenTransition.Fade, {ID: 12 , Shade: Color.Red}) |
显示 Details 屏幕,其中包含 Fade 转换。 将 ID 上下文变量的值更新为 12。 将 Shade 上下文变量的值更新为 Color.Red。 |
当前屏幕淡出以显示 Details 屏幕。
Details 屏幕的上下文变量 ID 设置为 12,上下文变量 Shade 设置为 Color.Red。 如果在 Details 屏幕上将控件的 Fill 属性设置为 Shade,该控件将显示为红色。 |
Back() |
使用反向转换返回到上一个屏幕。 | Power Apps 反转上次转换,以显示上一个屏幕。 |
Back(ScreenTransition.Cover) |
使用 Cover 转换返回到上一个屏幕。 |
无论以何种方式进入当前屏幕,都会使用 Cover 转换。 |
总之,Navigate 和 Back 支持参数以增强控制。 借助 Navigate,您可以将用户引导至另一个屏幕,应用转换并设置上下文变量。 Back 函数支持具有默认或指定转换的反向导航。
到目前为止,您已使用 OnSelect 属性启用屏幕导航。 在下一个单元中,我们将探索实现应用导航的其他方法。