设置 Page 节点之间的迁移

备注

Page 和 Page Host 节点已弃用。使用 Activity 和 Activity Host 节点为您的应用程序构建可导航的 UI。请参阅 活动。

默认情况下,Kanzi 使用 Push 转换在 Page 和 Page Host 节点之间进行转换。您可以使用以下方法创建自己的转换:

  • Transition Presets 用于在 Page 和 Page Host 节点之间设置和转换。

  • Animations 用于设置或自定义 Page 和 Page Host 节点之间的过渡。

../../_images/page-transition-editor1.png

在 Kanzi 中,过渡是您可以重用的资源。您可以在 Library > Page Transitions 中的 Kanzi Studio 项目中看到过渡。

../../_images/library-page-transitions.png

在 Page 和 Page Host 节点之间设置迁移

要设置 Page 和 Page Host 节点之间的迁移:

  1. 使用 Page 和 Page Host 节点创建用户界面结构。请参阅 使用 Page 和 Page Host 节点。

  2. 在 Pages 中,单击 Transitions 以在 Pages 中显示 Transitions 编辑器。

    ../../_images/pages-transitions-button.png
  3. 在 Pages 中,单击任何 Page 或 Page Host 节点以选择它,然后在 Transitions 编辑器中单击 image0 以创建过渡。

    Transitions 编辑器显示您在 Pages 或 Node Tree 中选择的 Page 或 Page Host 节点所使用的转换。当您创建转换时,Kanzi Studio 默认情况下使用 Push 转换。

    ../../_images/create-transition.png
  4. 在 Transitions 编辑器中,从 Transition Presets 拖动一个转换并将其放在 Default 转换下方。

    这样,您可以在此节点与任何其他 Page 或 Page Host 节点之间添加到 Default 过渡的过渡。

    例如,将 Flip 过渡从 Transition Presets 拖动并放置在 Transitions 编辑器中的 Default 过渡下方。

    在 Preview 中,当您从或到您设置了过渡类型的 Page 节点开始过渡时,Kanzi 使用您设置的过渡。

    ../../_images/flip-transition.png
    ../../_images/carousel.gif

    Carousel

    ../../_images/cube.gif

    Cube

    ../../_images/fade.gif

    Fade

    ../../_images/flip.gif

    Flip

    ../../_images/hinge.gif

    Hinge

    ../../_images/push.gif

    Push

    ../../_images/rotate.gif

    Rotate

    ../../_images/scale.gif

    Scale

    ../../_images/slide.gif

    Slide

    ../../_images/swivel.gif

    Swivel

  5. 要配置过渡,请在 Transitions 编辑器中单击 image1,并在弹出窗口中设置:

    • Duration 到转换的长度(以毫秒为单位)。

    • 当您从该节点导航时,将此过渡应用到您想要应用的 From 到 Page 或 Page Host 节点。

    • 当您导航到该节点时,将此过渡应用于您要应用此过渡的 Page 或 Page Host 节点的 To。

    • Direction 用于判断过渡是否适用于从您在 From 属性中设置的节点到您在 To 属性中设置的节点的过渡,或适用于两个节点的过渡:

      • Bidirectional 将过渡应用于从 From 属性中的节点到 To 属性中的节点,以及从 To 属性中的节点到 From 属性中的节点的过渡。

      • Unidirectional 仅将过渡应用于 From 属性中的节点到 To 属性中的节点。

    ../../_images/configure-transition.png

创建迁移动画

使用过渡动画来设置 Page 和 Page Host 节点之间的过渡,或自定义过渡。

要创建迁移动画:

  1. 在 Library > Page Transitions 按 Alt 并右键单击 中,选择您想要添加过渡动画的过渡,并选择 Page Transition Animation。

    ../../_images/create-transition-animation.png
  2. 在 Library 中选择您在上一步中创建的过渡动画,并在 Properties 中设置:

    • Animation Target 到:

      • 要使用动画在导航到设置的 Page 或 Page Host 节点时,请使用 Page In。

      • Page Out 要使用动画,当从设置的 Page 或 Page Host 节点导航时。

    • 将 Transition Property 到您想要动画化的属性。

    • 当过渡动画开始时,将 Start Value 设置为 Transition Property 的值。

    • 当过渡动画结束时,将 End Value 设置为 Transition Property 的值。

    ../../_images/animation-in-library.png ../../_images/transition-animation-properties.png
  3. 要使用您创建的过渡动画设置 Page 或 Page Host,请在 Node Tree 中选择该 Page 或 Page Host 节点,并在 Properties 中将 Transitions 属性设置为使用该动画的过渡。

    ../../_images/transition-property.png

为迁移添加迁移动画

要自定义迁移,您可以为现有的迁移添加迁移动画。

要为迁移添加迁移动画:

  1. 在 Pages 中,单击 Transitions 以在 Pages 中显示 Transitions 编辑器。

    ../../_images/pages-transitions-button.png
  2. 在 Pages 中,选择您要添加过渡动画的 Page 或 Page Host 节点,并在 Transitions 编辑器中从 Animations 拖动动画到您要自定义的过渡。

    例如,将 Scale 动画拖到 Default 过渡,以在 Default 过渡中添加缩放动画。

    ../../_images/select-page-in-pages-editor.png ../../_images/drag-animation-to-transition-editor.png ../../_images/customized-transition.png
  3. (可选) 要自定义过渡动画,请在 Library > Page Transitions 中展开使用该动画的过渡,选择过渡动画,并在 Properties 中设置:

    • 当动画开始时,将 Start Value 设置为 Transition Property 的值。

    • 当动画结束时,将 End Value 设为 Transition Property 的值。

    ../../_images/select-animation-in-library.png ../../_images/scale-in-properties.png

在您的应用程序中开始在 Page 节点之间进行转换。

当您在 Pages 中单击 Page 或 Page Host 节点时,您可以在 Preview 中看到过渡。然而,要在应用程序中在节点之间进行过渡,您需要使用带有 Navigate to 操作之一的触发器。

要在您的应用程序中开始 Page 节点之间的过渡:

  1. 使用 Page 和 Page Host 节点创建用户界面结构。请参阅 使用 Page 和 Page Host 节点。

  2. 在 Node Tree 中创建一个您想用来在 Page 和 Page Host 节点之间导航的控件。

    例如:在 Page Host 节点 RootPage 中创建一个 Button 2D 节点。请参阅 使用 Button 节点。

    ../../_images/starting-transitions-button.png
  3. 在 Node Tree 中选择您在上一步中创建的控件,在 Node Components > Triggers 部分 按 Alt 并右键单击 您要用于导航的触发器类型,并选择一个操作:

    • Page: Navigate to Page 转到您在此操作中设置的节点。

    • Page Host: Navigate to Next 转到在 Pages 中显示的当前节点右侧的兄弟节点。

    • Page Host: Navigate to Previous 前往在 Pages 中显示的当前节点左侧的兄弟节点。

    • Page: Navigate to Parent 转到您在此操作中选择的节点的父节点。

    例如,选择 Page Host: Navigate to Next 操作并将操作设置为 RootPage 节点。

  4. 在动作设置中进行以下设置:

    • Target Item 到您想要执行操作的节点。要通过属性设置操作的目标节点,请将 Define Target with Property 属性设置为启用并设置:

      • Target Item 到包含您要使用的属性以设置目标节点的节点。

      • 将 Property 设置为您要用于设置目标 Page Host 节点的属性。使用自定义属性类型时,在该属性类型中设置:

        • Data Type 到 Project Item

        • Editor 到 Page selector

        请参阅 创建属性类型。

    • (可选) 要在没有过渡动画的情况下进行过渡,请将 Immediate 属性设置为启用。

    ../../_images/starting-transitions-navigate-to-next-subpage.png

在 Preview 中,点击您创建的控件以在 Page 和 Page Host 节点之间导航。每次点击控件时,您都会向右前进一页:从 Home 到 Music,从 Music 到 Car,从 Car 到 Home,依此类推。

在 API 中使用页面迁移

有关详细信息,请参阅 PageTransitionCollection 类。

另请参阅

使用 Page 和 Page Host 节点

触发器 (Triggers)