【鸿蒙学习】HarmonyOS应用开发者基础 - 构建更加丰富的页面(一)

在这里插入图片描述
学完时间:2024年8月14日

一、前言叨叨

学习HarmonyOS的第六课,人数又成功的降了500名左右,到了3575人了。

二、ArkWeb

1、概念介绍

ArkWeb是用于应用程序中显示Web页面内容的Web组件,为开发者提供页面加载、页面交互、页面调试等能力。可以实现移动端的混合式开发(Hybrid App)。

2、常见场景

页面加载是Web组件的基本功能。根据页面加载数据来源可以分为三种常用场景,包括加载网络页面、加载本地页面、加载HTML格式的富文本数据。

  • 加载网络页面
    开发者可以在Web组件创建时,指定默认加载的网络页面 。在默认页面加载完成后,如果开发者需要变更此Web组件显示的网络页面,可以通过调用loadUrl()接口加载指定的网页。Web组件的第一个参数变量src不能通过状态变量(例如:@State)动态更改地址,如需更改,请通过loadUrl()重新加载。
  • 加载本地页面
    将本地页面文件放在应用的rawfile目录下,开发者可以在Web组件创建的时候指定默认加载的本地页面 ,并且加载完成后可通过调用loadUrl()接口变更当前Web组件的页面。
  • 加载HTML格式的文本数据
    Web组件可以通过loadData()接口实现加载HTML格式的文本数据。当开发者不需要加载整个页面,只需要显示一些页面片段时,可通过此功能来快速加载页面。
  • 动态创建Web组件
    支持命令式创建Web组件,这种方式创建的组件不会立即挂载到组件树,即不会对用户呈现(组件状态为Hidden和InActive),开发者可以在后续使用中按需动态挂载。后台启动的Web实例不建议超过200个。

三、配置网络权限

页面加载过程中,若涉及网络资源获取,需要配置ohos.permission.INTERNET网络访问权限。

1、首先需要在products/default/src/main/module.json5文件中先配置好允许程序打开网络套接字,即申请权限ohos.permission.INTERNET。


// products/default/src/main/module.json5
{
  "module": {
    ...
    "requestPermissions": [
      {
        "name": "ohos.permission.INTERNET",
        "reason": "$string:apply_for_network"
      }
    ]
  }
}

2、在products/default/src/main/resources/base/element/string.json和products/default/src/main/resources/en_US/element/string.json中添加配置。

{
  "string": [
    {
      "name": "module_desc",
      "value": "module description"
    },
    {
      "name": "EntryAbility_desc",
      "value": "description"
    },
    {
      "name": "EntryAbility_label",
     "value": "HMOS Basic"
    },
    {
      "name": "apply_for_network",
      "value": "Allow the app to access the network"
    }
  ]
}

3、在products/default/src/main/resources/zh_CN/element/string.json中添加配置。


{
  "string": [
    {
      "name": "module_desc",
      "value": "模块描述"
    },
    {
      "name": "EntryAbility_desc",
      "value": "description"
    },
    {
      "name": "EntryAbility_label",
      "value": "HMOS世界入门版"
    },
    {
      "name": "apply_for_network",
      "value": "允许应用使用网络"
    }
  ]
}

四、总结

由于本篇幅内容较多,将分为两部分,第一部分记录Navigation组件、Tabs组件的使用,有兴趣的小伙伴可以直接点击下一篇内容 【鸿蒙学习】HarmonyOS应用开发者基础 - 构建更加丰富的页面之Navigation(二)
希望大家多多关注+点赞+收藏 🙏🙏,你们的鼓励是我不断前进的动力💪💪!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/870910.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

『功能项目』移动后的光标显示【04】

我们打开上一篇03的射线双击项目, 本章要做的事情是在PlayerRayNavgation脚本中添加一个移动光标,实现人物在场景中鼠标点击移动后在移动过程中出现移动目标光标的效果。 在unity编辑器中创建一个Plane 重命名为MovementSign 删掉碰撞器 创建一个材质 选…

Linux安装MQTT 服务器(图文教程)

MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息传输协议,专为低带宽和不稳定的网络环境设计,非常适合物联网(IoT)应用。 官网地址:https://www.emqx.com/ 一、版本选择 根据自己…

C++学习笔记----4、用C++进行程序设计(一)---- 什么是面向对象的程序设计

也许你看到这个题目的时候,就觉得这篇博文不用看了,难道这就是题目劝退了观众。我看到过一些程序,是由面向过程的传统程序修改过来了,只是将原来的函数变成了类的成员函数,其他几乎没有什么变化,可以说是换…

【leetcode详解】T3137(思路详解 代码优化感悟)

思路详解 要解决这个问题,我们的大致思路是这样:找到长度为k的字符串 (记为stringA) ,统计重复次数最多的那一个,则最终对应的k周期字符串就是 [stringA * n] 的形式( n word.length() / k) 要实现多对象的计数&…

easyexcel--导入导出实现自定义格式转换

自定义格式 我们在数据库设计的时候经常会有枚举类型,如0表示普通用户,1表示VIP用户等,这在excel导入的时候,我们会填普通用户而不是0,这样就需要用到自定义格式把普通用户转换成0,我写了一个通用的抽象类…

LabVIEW多协议智能流水线控制与监控系统

在自动化流水线系统,实现对流水线传送带、机械臂、报警系统、扫码机、喷码机等设备的高效控制和实时监控。该系统需要支持多种通信协议,包括UDP、串口、ModbusTCP、HTTP、以及MQTT协议,以确保各个设备间的无缝连接和数据交换。 系统架构与模…

软考:软件设计师 — 14.算法基础

十四. 算法基础 1. 算法的特性 算法是对特定问题求解步骤的描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。 有穷性:执行有穷步之后结束,且每一步都可在有穷时间内完成。确定性:算法中每一条指令必须有…

使用对比!SLS 数据加工 SPL 与旧版 DSL 场景对照

作者:灵圣 概述 如前一篇《SLS 数据加工全面升级,集成 SPL 语法》所述,SLS 数据加工集成了 SLS 数据处理语法 SPL。与旧版本数据加工 DSL 相比,SPL 在处理非结构化数据的场景中,其语法简洁度上有很多提升&#xff0c…

Linux ubuntu 24.04 运行《文明5》游戏,解决游戏中文设置的问题!

Linux ubuntu 24.04 运行《文明5》游戏,解决游戏中文设置的问题! 《文明5》是一款回合制经营策略游戏,拼的就是科技发展速度,点的是科技树,抢的就是科技制高点,但是真的是时间漫长,可能需要好几…

游戏开发之性能优化

游戏开发中的性能优化是一个复杂且多方面的过程,涉及到多个层面的改进和调整。以下是一些主要的优化技巧和方法: 代码优化: 缓存计算结果:对于那些耗费大量CPU计算而计算结果无需每帧变化的逻辑,使用缓存可以显著提高性…

UniformSampling 均匀采样滤波(附PCL库的C++代码)

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录前言一、原理二、算法步骤三、算法实现参考链接前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对UniformSam…

XSS游戏

目录 XSS游戏-WarmupsMa Spaghet!JefffUgandan KnucklesRicardo MilosAh Thats HawtLigmaMafiaOk, BoomerWW3 XSS游戏-Warmups Ma Spaghet! 1. 尝试注入&#xff0c;输入aaaaaaaa 2. 显示在<h2>标签内3. 输入标签&#xff0c;添加onmouseover属性值为alert(1337)&…

物流抓取机器人整体设计方案

一、功能简介 1、运行环境&#xff1a;巡线行驶&#xff08;7路数字循迹&#xff0c;麦克纳姆轮车底盘&#xff09; 2、目标识别&#xff1a;颜色识别&#xff08;Maix-II Dock 视觉模块&#xff09; 3、目标定位&#xff1a;视觉测距&#xff08;Maix-II Dock 视觉模块&#x…

mov和mp4有什么区别?如何实现mov格式转mp4格式?

每种视频格式都有自己的特点&#xff0c;尤其是mov和mp4这两种格式&#xff0c;它们如同两种各具特色的语言&#xff0c;各自拥有独特的表达方式和优势&#xff0c;使得视频内容能够根据不同的需求和场景&#xff0c;以最佳的方式呈现给观众。 mov作为苹果公司开发的音频、视频…

VBA技术资料MF185:图片导入Word添加不同格式说明文字

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套&#xff0c;分为初级、中级、高级三大部分&#xff0c;教程是对VBA的系统讲解&#…

这些星座比你想象的还努力

TOP 3. 金牛座   金牛座对于操劳操心的忍受度本来就比较高&#xff0c;对于金牛座来说这些都是踏实的象征&#xff0c;金牛座比较不相信不劳而获这件事情&#xff0c;多少血汗多少付出&#xff0c;得到多少收获&#xff0c;这让金牛座比较踏实&#xff0c;不会觉得很不安&…

三、LogicFlow 基础配置介绍及实现一个基础 Demo

目录 前置LogicFlow 介绍LogicFlow基础配置引入方式核心包基础概念实例&#xff08;配置项&#xff09;节点边&#xff08;节点与节点之间的连线&#xff09;背景网格主题事件 插件包 实现基础Demo最后 前置 这一篇主要是对 LogicFlow 的一些功能及配置相关的介绍&#xff08;…

基于vue框架的爱心献血管理系统gyx4y(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;用户,公告信息,献血车动态,献血预约,献血记录 开题报告内容 基于Vue框架的爱心献血管理系统 开题报告 一、课题名称 基于Vue框架的爱心献血管理系统 二、研究背景与意义 研究背景&#xff1a; 随着医疗技术的不断进步和各类突发事…

前端框架(三件套)

学习网站 HTML 系列教程&#xff08;有广告&#xff09; HTML&#xff08;超文本标记语言&#xff09; | MDN (mozilla.org)&#xff08;英文不太友好&#xff09; 1.HTML5 & CSS3 1.1HTML5表格 <!DOCTYPE html> <html lang"en"> <head>…

教你如何使用C语言实现--多个字符向中间汇聚成句(Sleep与sysem函数)

目录 前言 一、实现思路 二、两个新函数 1.Sleep()函数 1.1 sleep 函数的基本语法&#xff1a; 1.2 示例 2.system()函数 2.1 system()函数的介绍 2.2 system函数清理屏幕 2.3 示例 三、代码实现 总结 前言 前面我们已经学到了C语言的数组&#xff0c;今天我们就可以…