HarmonyOS应用开发基础—页面跳转三种类型九种跳转方式

HarmonyOS应用开发基础——页面跳转三种类型九种跳转方式

HarmonyOS应用开发基础

  • HarmonyOS应用开发基础——页面跳转三种类型九种跳转方式
    • Ability
      • Ability概述
      • Ability分类
        • FA(Feature Ability)
        • PA(Particle Ability)
    • Intent
      • Intent概述
      • Intent详解
    • 跳转
      • 跳转方式
      • 跳转风格
      • 熟悉跳转方式(跳转风格一)
        • 运行截图
        • 无参数无返回值跳转
        • 有参数无返回值跳转
        • 有参数有返回值跳转
        • 具体实现(核心代码)
      • 跳转风格二
        • 具体实现(核心代码)
      • 跳转风格三
        • 运行截图

Ability

一定有同学好奇,为什么我来看页面跳转,首先要学习Ability?因为在HarmonyOS编程之中,Ability是整个应用的基本单位,我们要运用的页面跳转,其实根本上就是Ability跳转,所以我们要先大概了解了Ability,才能深度的去学习。

Ability概述

Ability是应用所具备能力的抽象,也是应用程序的重要组成部分。一个应用可以具备多种能力(即可以包含多个
Ability),HarmonyOS支持应用以Ability为单位进行部署。

Ability分类

1.FA(Feature Ability)
2.PA(Particle Ability)
每种类型为开发者提供了不同的模板,以便实现不同的业务功能。

FA(Feature Ability)

FA支持Page Ability,简单理解就是手机应用中的一个界面。一个界面就是一个FA。
Page模板是FA唯一支持的模板,用于提供与用户交互的能力。一个Page实例可以包含一组相关页面,每个页面用
一个AbilitySlice实例表示。

PA(Particle Ability)

FA是有有界面的,而Particle Ability(PA)是无界面的,简单理解就是可以运行在后台的一个服务。
PA支持Service Ability和Data Ability;
1)Service模板
用于提供后台运行任务的能力。
2)Data模板
用于对外部提供统一的数据访问抽象。一般是跟数据相关的,比如:如果我们要运行访问数据库。那么就可以用
PA中的Data模板。

我们要学习的页面跳转,就是要从FA入手
页面FA和切片之间的关系
页面中如何添加多个切片
页面之间的跳转
想要学习跳转,首先要知道一个知识点就是意图,表示我跳转的时候,跳到哪里以及携带什么参数进行跳转?

Intent

Intent概述

Intent是对象之间传递信息的载体。
例如,当一个Ability需要启动另一个Ability时,或者一个AbilitySlice需要导航到另一个AbilitySlice时,可以通过
Intent指定启动的目标同时携带相关数据。Intent的构成元素包括Operation与Parameters:
/**
**Operation:表示要跳转的目的地
**Parameters:跳转时所携带的数据
**/

Intent详解

HarmonyOS应用开发基础—页面跳转三种类型九种跳转方式_第1张图片

跳转

跳转方式

1、无参数无返回值跳转
2、有参数无返回值跳转
3、有参数有返回值跳转

跳转风格

1、同一个页面中,不同切片之间的跳转(无参,有参,有返回结果)最基础的跳转
2、不同页面中,主切片跟主切片之间的跳转(无参,有参,有返回结果)
3、不同页面中,主切片跟非主切片之间的跳转(无参,有参,有返回结果)

3*3是不是9种呢

熟悉跳转方式(跳转风格一)

第一步:先在主页面ability_main添加好想要的组件,例如Text,Button


<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent"
    ohos:alignment="center"
    ohos:orientation="vertical">

    <Button
        ohos:id="$+id:but1"
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:background_element="#21a8fd"
        ohos:layout_alignment="horizontal_center"
        ohos:text="无参数无返回的跳转"
        ohos:text_size="40vp"
        ohos:top_margin="30vp"
        />
    <Button
        ohos:id="$+id:but2"
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:background_element="#21a8fd"
        ohos:layout_alignment="horizontal_center"
        ohos:text="有参数无返回的跳转"
        ohos:text_size="40vp"
        ohos:top_margin="30vp"
        />
    <Button
        ohos:id="$+id:but3"
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:background_element="#21a8fd"
        ohos:layout_alignment

你可能感兴趣的:(HarmonyOS应用开发,harmonyos)