0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙OS元服务开发:【(Stage模型)学习窗口沉浸式能力】

jf_46214456 ? 来源:jf_46214456 ? 作者:jf_46214456 ? 2024-04-03 18:27 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、体验窗口沉浸式能力说明

在看视频、玩游戏等场景下,用户往往希望隐藏状态栏、导航栏等不必要的系统窗口,从而获得更佳的沉浸式体验。此时可以借助窗口沉浸式能力(窗口沉浸式能力都是针对应用主窗口而言的),达到预期效果。

二、开发步骤

1.获取应用主窗口。

通过getMainWindow接口获取应用主窗口。

2.实现沉浸式效果。

调用setWindowSystemBarEnable接口,设置导航栏、状态栏不显示,从而达到沉浸式效果。

3.加载显示沉浸式窗口的具体内容。

通过loadContent接口加载沉浸式窗口的具体内容。

搜狗高速浏览器截图20240326151450.png

import UIAbility from '@ohos.app.ability.UIAbility';

export default class EntryAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        // 1.获取应用主窗口。
        let windowClass = null;
        windowStage.getMainWindow((err, data) = > {
            if (err.code) {
                console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
                return;
            }
            windowClass = data;
            console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));

            // 2.实现沉浸式效果:设置导航栏、状态栏不显示。
            let names = [];
            windowClass.setWindowSystemBarEnable(names, (err) = > {
                if (err.code) {
                    console.error('Failed to set the system bar to be visible. Cause:' + JSON.stringify(err));
                    return;
                }
                console.info('Succeeded in setting the system bar to be visible.');
            });
        })
        // 3.为沉浸式窗口加载对应的目标页面。
        windowStage.loadContent("pages/page2", (err) = > {
            if (err.code) {
                console.error('Failed to load the content. Cause:' + JSON.stringify(err));
                return;
            }
            console.info('Succeeded in loading the content.');
        });
    }
};

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模型
    +关注

    关注

    1

    文章

    3547

    浏览量

    50741
  • 鸿蒙
    +关注

    关注

    60

    文章

    2656

    浏览量

    44355
  • 鸿蒙OS
    +关注

    关注

    0

    文章

    191

    浏览量

    5049
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Stage 模型深入解读

    HarmonyOS 3.1 版本(API 9)推出了全新应用开发模型 - Stage 模型,该模型重新定义了应用
    的头像 发表于 02-18 09:28 ?1866次阅读
    <b class='flag-5'>Stage</b> <b class='flag-5'>模型</b>深入解读

    鸿蒙应用/服务开发-窗口Stage模型)设置应用主窗口

    一、 设置应用主窗口****说明 在Stage模型下,应用主窗口由UIAbility创建并维护生命周期。在UIAbility的onWindowStageCreate回调中,通过Wind
    发表于 02-05 14:45

    鸿蒙应用/服务开发-窗口Stage模型)体验窗口沉浸能力

    一、体验窗口沉浸能力说明 在看视频、玩游戏等场景下,用户往往希望隐藏状态栏、导航栏等不必要的系统窗口,从而获得更佳的
    发表于 02-06 15:08

    KaihongOS操作系统FA模型Stage模型介绍

    应用能力和系统管控成本。 Ability与UI分离、严格的后台管控、基于场景的服务机制及单进程模型等特点,使得Stage模型非常适合
    发表于 04-24 07:27

    Stage模型深入解读

    HarmonyOS 3.1版本(API 9)推出了全新应用开发模型-Stage模型,该模型重新定义了应用
    发表于 03-15 10:32

    鸿蒙原生应用/服务开发-Stage模型能力接口(一)

    从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。本模块接口仅可在Stage模型下使用。二、导入模块 .import Ability from
    发表于 12-08 16:34

    鸿蒙原生应用/服务开发-Stage模型能力接口(二)

    退出原因、迁移结果、窗口类型等。本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。本模块接口仅可在Stage模型下使用。二、导入模块
    发表于 12-11 14:48

    鸿蒙原生应用/服务开发-Stage模型能力接口(四)

    一、说明 AbilityStage是HAP的运行时类。AbilityStage类提供在HAP加载的时候,通知开发者,可以在此进行该HAP的初始化(如资源预加载,线程创建等)能力。 本模块首批接口从
    发表于 12-14 15:39

    鸿蒙原生应用/服务开发-Stage模型能力接口(五)

    Stage模型下使用 二、 导入模块 import common from \'@ohos.app.ability.common\'; 三、系统能力 :以下各项对应的系统能力均为
    发表于 12-15 15:11

    鸿蒙原生应用/服务开发-Stage模型能力接口(六)

    的起始版本。本模块接口仅可在Stage模型下使用。 二、 导入模块 import contextConstant from \'@ohos.app.ability.contextConstant\'; 三
    发表于 12-18 14:40

    鸿蒙原生应用/服务开发-Stage模型能力接口(七)

    接口的起始版本。本模块接口仅可在Stage模型下使用。 二、导入模块 import EnvironmentCallback from
    发表于 12-19 11:03

    鸿蒙原生应用/服务开发-Stage模型能力接口(八)

    独标记接口的起始版本。本模块接口仅可在Stage模型下使用。 二、导入模块 .import ExtensionAbility from
    发表于 12-20 16:12

    Stage模型深入解读

    作者:sunbingxin 应用框架架构师 HarmonyOS 3.1版本(API 9)推出了全新应用开发模型-Stage模型,该模型重新定
    的头像 发表于 03-16 13:35 ?1456次阅读

    鸿蒙OS服务开发:【(Stage模型)设置应用主窗口

    Stage模型下,应用主窗口由UIAbility创建并维护生命周期。在UIAbility的onWindowStageCreate回调中,通过WindowStage获取应用主窗口,即可
    的头像 发表于 04-03 18:28 ?1513次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>OS</b><b class='flag-5'>元</b><b class='flag-5'>服务</b><b class='flag-5'>开发</b>:【(<b class='flag-5'>Stage</b><b class='flag-5'>模型</b>)设置应用主<b class='flag-5'>窗口</b>】

    鸿蒙Stage模型与FA模型详解

    【HarmonyOS 5】鸿蒙Stage模型与FA模型详解 ##鸿蒙开发
    的头像 发表于 07-07 11:50 ?283次阅读