首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

鸿蒙从窗口开始:Page Ability诞生记

另外,HarmonyOS还提供了一个AbilitySlice。AbilitySlice的功能与Page类似,只是在切换时可以在同一个Page内完成。...如果从Page到Page,相当于Web页面用新窗口导航到另一个页面。如果从AbilitySlice切换到AbilitySlice,相当于Web页面以同一个窗口的方式导航到另一个页面。...一个Page可以不使用AbilitySlice,也可以使用一个或多个AbilitySlice,在创建HarmonyOS工程时,生成的Demo代码中包含了一个默认的AbilitySlice(MainAbilitySlice.java...下面是一个典型的应用场景: 在线视频播放器的主界面可以用一个Page来实现,在主界面中包含了两个AbilitySlice:一个AbilitySlice用于展示视频列表,另一个AbilitySlice用于播放视频...而HarmonyOS只会显示在config.json文件中遇到的第一个主Ability。

43630

HarmonyOS (鸿蒙操作系统)你值得拥有

一个Page 可以由一个或多个 AbilitySlice 构成,AbilitySlice 是指应用的单个页面及其控制逻辑的总和。...例如,新闻浏览功能可以通过一个 Page 来实现,其中包含了两个AbilitySlice:一个 AbilitySlice 用于展示新闻列表,另一个 AbilitySlice 用于展示新闻详情。...例如,当一个 Ability 需要启动另一个 Ability 时,或者一个 AbilitySlice 需要导航到另一个 AbilitySlice 时,可以通过 Intent 指定启动的目标同时携带相关数据...对于一个Page实例,该回调在其生命周期过程中仅触发一次, Page在该逻辑后将进入INACTIVE状态。开发者必须重写该方法,并在此配置默认展示的AbilitySlice。...在开发过程中,如 layout 目录下文件名和 id 值及 graphic 目录下的文件名在IDE中是有联想选择的,有的会拼接上一些固定字符串。

46510
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    HarmonyOS学习路之开发篇——Page Ability

    例如,新闻浏览功能可以通过一个Page来实现,其中包含了两个AbilitySlice:一个AbilitySlice用于展示新闻列表,另一个AbilitySlice用于展示新闻详情。...与此类似,HarmonyOS支持不同Page之间的跳转,并可以指定跳转到目标Page中某个具体的AbilitySlice。...此外,AbilitySlice还具有独立于Page的生命周期变化,这发生在同一Page中的AbilitySlice之间导航时,此时Page的生命周期状态不会改变。...例如,通过导航启动某个AbilitySlice时,是由系统负责实例化;但是在同一个Page中不同的AbilitySlice间导航时则由应用负责实例化。...HarmonyOS在设备B上启动同一个Page,并回调其恢复数据方法。 开发者可以参考以下详细步骤开发具有迁移功能的Page。

    89530

    【鸿蒙 HarmonyOS】Ability 简介 ( 简介 | 创建应用 | Page Ability 生命周期 )

    AbilitySlice 作为界面布局 ; Feature Ability ( FA ) 相当于 Android 中的 Activity , AbilitySlice 相当于 Android 中的 Layout...; Ability 一定程度上相当于 Android 中的 Activity , Service , ContentProvider 组件 ; 二、创建应用 ---- 参考上一篇博客 【鸿蒙 HarmonyOS...】创建 Java 语言 HarmonyOS 手机应用 ( 首次进入 DevEco Studio 配置环境 | 创建 Java 手机工程 | 鸿蒙工程代码目录简介 ) 创建的鸿蒙工程应用 ; 创建 手机...; GitHub 地址 : https://github.com/han1202012/HarmonyHelloWorld 相关的程序入口及配置文件说明参考 【鸿蒙 HarmonyOS】创建 Java..., 另一个 Page Ability 前台显示 , 会回调 onInactive() 方法 , 状态变为 INACTIVE 状态 窗口彻底不显示 , 但是还处于后台状态 , 会回调 onBackground

    1.4K00

    HarmonyOS学习路之开发篇—— Java UI框架(组件与布局说明)

    在HarmonyOS应用中所有的界面元素都是由Component和ComponentContainer对象构成。Component是绘制在界面中的对象,用户可以与其进行交互。...一个完整的用户界面是一个布局,在用户界面中某一个部分也可作为一个布局,布局中容纳了Component和ComponentContainer对象。...如:“width”、“height”是布局最基本的属性,他们指定了组件的大小。...组件与布局开发 HarmonyOS提供了Ability和AbilitySlice两个基础类,一个有界面的Ability可以由一个或多个AbilitySlice构成,AbilitySlice主要用于承载单个页面的具体逻辑实现和界面...XML创建布局 请跳转至HarmonyOS学习路之开发基础——快速入门(编写第一个页面) 代码创建布局 请跳转至HarmonyOS学习路之开发基础——快速入门(创建另一个页面)

    79930

    自学HarmonyOS应用开发(64)- 处理屏幕旋转

    旋转屏幕是手机用户的一个日常操作,本文介绍如何在屏幕旋转时自动调整屏幕布局的方法。...效果如下: 间接处理屏幕旋转 默认情况下用户旋转屏幕时,Harmony应用架构会调用AbilitySlice类的onStart方法,所以原则上讲,只要开发者在onStart中获取屏幕方向并选择适当的画面布局就间接处理了屏幕旋转...如果稍加调查,可以发现Ability类有一个颇具迷惑性的方法: public int getDisplayOrientation() 但是很遗憾,这个方法返回的是开发者在config.json中定义的那个...orientation,它不会随着屏幕的旋转而改变。...直接处理屏幕旋转 另外一个和getDisplayOrientiaon同样具有迷惑性的是Ability和AbilitySlice都有一个屏幕旋转事件处理方法,看起来开发者只要重写这个方法就能接受相应的通知

    1.3K40

    Ability概述【鸿蒙专题10】

    一个应用可以具备多种能力(即可以包含多个Ability),HarmonyOS支持应用以Ability为单位进行部署。...例如,新闻APP可以通过一个Page来实现,其中包含了两个AbilitySlice:一个AbilitySlice用于展示新闻列表,另一个AbilitySlice用于展示新闻详情。...此外,AbilitySlice 还具有独立于 Page Ability的生命周期变化,这发生在同一 Page Ability中的 AbilitySlice 之间导航时,此时 Page Ability的生命周期状态不会改变...Service应通过实现此方法来清理任何资源,如关闭线程、注册的侦听器等。...onConnect()需要返回一个IRemoteObject对象,HarmonyOS提供了IRemoteObject的默认实现,用户可以通过继承LocalRemoteObject来创建自定义的实现类。

    73620

    自学HarmonyOS应用开发(48)- Tablist组件进阶

    在应用开发中经常会用到Tablist组件,连载中也介绍了该组件的基本用法: 自学鸿蒙应用开发(17)- TabList和Tab 但是有一个问题是这篇文章,包括HarmonyOS应用开发的官方文档都只是实现了...定义状态基类 对于包含Tablist的AbilitySlice来讲,需要根据Tablist的选择结果切换画面组件和相应的动作处理,我们为此定义了一个SliceState基类。...这样做的好处就是:每种画面的布局,处理代码都独立为一个单独的SliceState类,增加功能变得容易且安全,例如SettingState类。 以下是实际动作的演示视频,画面不连贯是模拟器的原因。...作者著作介绍 《实战Python设计模式》是作者去年3月份出版的技术书籍,该书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。...这样一方面可以使读者了解真实的软件开发工作中每个设计模式的运用场景和想要解决的问题;另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。

    40410

    HarmonyOS App开发之组件布局类(优化篇)

    这是无量测试之道的第217篇原创 今天继续分享学习 HarmonyOS 系统,今天的分享将在HarmonyOS App开发之组件布局类的基础上,针对核心的代码进行一次优化。...首先,来看一看 HarmonyOS App开发之组件布局类 的核心处理逻辑代码(备注不同布局的相似代码忽略掉): @Override public void onStart(Intent intent..._ 是系统要求这样做的,表明这是一个布局文件,布局文件详情在下面有详细列出。...show(); // 这里还引入了Toast提示框,它弹出一个小信息,作为提醒或消息反馈来用,一般用来显示操作结果,或者应用状态的改变。...,不用再像HarmonyOS App开发之组件布局类那样重复性的编写类似的代码。

    22910

    自学鸿蒙应用开发(18)- Ability内部画面迁移

    本文介绍在鸿蒙应用中实现Ability内部Slice之间实现画面迁移的方法。 准备TabList页面布局 在layout目录下创建主画面布局,将其命名为ability_main.xml。 的画面表示如下: ? 画面背景配色主要为了区别每个组件的范围,没有考虑美感。 增加路由规则 如代码第16行~第19行所示,首先在Ability类中为每个迁移增加路由规则。...13行~第21行所示,为3个按钮增加向组件画面、列表画面和标签页画面迁移的代码: package com.example.helloharmony.slice; import com.example.helloharmony.ResourceTable...Page与AbilitySlice基本概念 https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-page-concept...-0000000000033573 AbilitySlice间导航 https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-page-switching

    36910

    HarmonyOS学习路之开发篇—流转(跨端迁移 一)

    如果可以开始迁移,则系统回调设备A上FA,及其AbilitySlice栈中所有AbilitySlice实例的IAbilityContinuation.onSaveData()方法,以便保存迁移后恢复状态必须的数据...如果保存数据成功,则系统在设备B上启动同一个FA,并恢复AbilitySlice栈,然后回调IAbilityContinuation.onRestoreData()方法,传递设备A上FA保存的数据,应用可在此方法恢复业务状态...void continueAbility(String deviceId) 把当前FA流转到同一个分布式网络中另外一个设备上,仅支持单向流转。...一个应用可能包含多个FA,仅需要在支持跨端迁移的FA及其所包含的AbilitySlice中,调用或实现相关接口。 跨端迁移不支持两个设备之间分别登录不同的帐号,也就是要求多个设备是同帐号。...跨端迁移要求HarmonyOS 2.0以上版本才能支持,注册到流转任务管理服务时jsonParams中需要增加{"harmonyVersion":"2.0.0"}过滤条件。

    36250

    《基于HarmonyOS NEXT API 12+,搭建新闻创作智能写作引擎》

    本文将基于HarmonyOS NEXT API 12及以上版本,深入讲解如何开发一个服务于新闻创作领域的AI智能写作助手,助力开发者掌握相关技术,推动鸿蒙系统在新闻行业的创新应用。...技术原理与关键知识点 AI智能写作在新闻创作中主要依赖自然语言处理(NLP)技术。其中,Transformer架构及其变体(如GPT系列模型的核心架构)在语言生成任务中表现出色。...在HarmonyOS开发中,我们利用其丰富的API来实现文本输入输出、与NLP模型的交互以及界面展示等功能。...应用集成 界面设计 使用HarmonyOS的UI组件设计一个简单的新闻创作界面,包含主题输入框、关键词输入框、生成按钮和结果展示区域。...开发者可以根据实际需求进一步优化模型,如增加对新闻风格的控制、引入更多的领域知识等,为新闻行业提供更强大、智能的创作工具,推动HarmonyOS在新闻领域的广泛应用与创新发展。

    4000

    HarmonyOS组件开发 ScrollView嵌套ListContainer 滑动冲突问题

    ScrollView嵌套ListContainer 就ScrollView嵌套ListContainer的滑动问题,社区问答中也是遇见了两次提问的小伙伴。...在帮助第一个小伙解决这个问题的时候,我提供了一个思路和以前在写Android ScrollView嵌套ListView滑动问题的解决方法。...调用方式 因为ScrollView继承自ViewGroup,在ViewGroup中有有dispatchTouchEvent()这个方法, 但是在HarmonyOS中,ScrollView...那么就只能从ScrollView的高度入手了,要改变ScrollView的高度就必须去改变它内部组件的高度,那么问题来了ScrollView嵌套ListContainer,ListContainer的高度最大只能到屏幕大小或者是固定于屏幕内部...; private AbilitySlice slice; public SampleItemProvider(List list, AbilitySlice

    93820

    《解锁HarmonyOS NEXT高阶玩法:艺术图像识别功能开发全攻略》

    本文将结合HarmonyOS NEXT API 12及以上版本,深入讲解如何开发一个具有艺术图像识别功能的应用,助力开发者掌握这一前沿技术,推动鸿蒙系统在艺术领域的创新应用。...CNN通过构建多层卷积层和池化层,自动提取图像中的特征,如线条、颜色、纹理等,从而对图像进行分类识别。在HarmonyOS开发中,我们利用其丰富的API来实现图像的获取、预处理以及与AI模型的交互。...同时,需要安装Python以及相关的依赖库,如 torch (用于深度学习模型处理)、 Pillow (用于图像读取和处理)。...界面设计 使用HarmonyOS的UI组件,设计一个简单的界面,包含文件选择按钮和结果显示区域。...开发者可以根据实际需求进一步优化模型、拓展功能,如增加图像标注、艺术品信息检索等,为艺术领域带来更多智能化的解决方案,推动HarmonyOS在艺术领域的广泛应用与创新发展。

    7210

    鸿蒙 Ability 讲解(页面生命周期、后台服务、数据访问)

    Ability 是应用所具备能力的抽象,也是应用程序的重要组成部分。一个应用可以具备多种能力(即可以包含多个 Ability),HarmonyOS 支持应用以 Ability 为单位进行部署。...一个Page 可以由一个或多个 AbilitySlice 构成,AbilitySlice 是指应用的单个页面及其控制逻辑的总和。 ? ?   ...一个 Page 可以包含多个 AbilitySlice,但是 Page 进入前台时界面默认只展示一个AbilitySlice。...此外,AbilitySlice 还具有独立于 Page Ability的生命周期变化,这发生在同一 Page Ability中的 AbilitySlice 之间导航时,此时 Page Ability的生命周期状态不会改变...Service 应通过实现此方法来清理任何资源,如关闭线程、注册的侦听器等。

    2.9K53

    自学鸿蒙应用开发(27)- 自定义ListDialog

    执行效果 上一篇文章中说过,直接使用鸿蒙系统中的ListDialog大致是下面的效果: ? 这个效果过于简陋,无法用于实际的产品开发。本文介绍如何定制自己的ListDialog。...还是先看演示视频: 准备布局 定制ListDialog的第一步是为列表项定义布局,这里采用ListContainer示例中相同的布局,首先是偶数项: 中的代码,不再重复说明。...下面是代码执行后的效果: ? 注意事项 目前的这种做法在鸿蒙文档中并没有说明,不排除将来发生变化的可能性。希望早日看到官方文档中的正式说法。...,该书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。

    32610

    DevEco Studio项目构建讲解、编写页面、布局介绍、页面跳转

    HarmonyOS的应用软件包以APP Pack(Application Package)形式发布,它是由一个或多个HAP(HarmonyOS Ability Package)以及描述每个HAP属性的pack.info...两个参数都不可省缺。 apiVersion 这也是一个对象,表示应用依赖的HarmonyOS的API版本。...entities 表示能够接收的Intent的Ability的类别(如视频、桌面应用等),可以包含一个或多个entity。取值通常为系统预定义的类别,可缺省,缺省值为空。...你可能会问ohos是个啥?我就这么告诉你,你把它当成AS中布局文件中的android就可以了。ohos我估计是鸿蒙系统对于布局的一个属性标识。...的startAbility接口实现启动另一个页面 startAbility(secondIntent); }

    5.2K40
    领券