Navigate 和 Back 函数

已完成

我们来了解如何向 NavigateBack 函数添加参数,以增强 Power Apps 应用中的用户界面。 在语法中,方括号表示可选参数。

下面是 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 反转转换(除非定义了特定转换)。

屏幕转换

屏幕转换可与 NavigateBack 函数结合使用。 可用选项包括:

  • ScreenTransition.Cover:新屏幕从右向左滑入,覆盖当前屏幕。

  • ScreenTransition.CoverRight:新屏幕从左向右滑入。

  • ScreenTransition.Fade:当前屏幕淡出,显示新屏幕。

  • ScreenTransition.None(默认值)立即切换到新屏幕。

  • ScreenTransition.UnCover:当前屏幕从右向左滑出。

  • ScreenTransition.UnCoverRight:当前屏幕从左向右滑出。

示例

下表提供一些使用 NavigateBack 转换的公式示例。 表中的几个 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 转换。

总之,NavigateBack 支持参数以增强控制。 借助 Navigate,您可以将用户引导至另一个屏幕,应用转换并设置上下文变量。 Back 函数支持具有默认或指定转换的反向导航。

到目前为止,您已使用 OnSelect 属性启用屏幕导航。 在下一个单元中,我们将探索实现应用导航的其他方法。