【HarmonyOS4+NEXT】新建项目指南

news2024/11/16 22:41:11

在这里插入图片描述

🙋‍ 一日之际在于晨
⭐本期内容:新建项目指南
🏆系列专栏:鸿蒙HarmonyOS4+NEXT:探索未来智能生态新纪元


文章目录

  • 创建项目
  • 项目结构概述
  • 运行项目
    • Preview预览
    • 模拟器运行
    • 真机运行
  • ArkUI框架简介
  • 总结


创建项目

点击创建一个新的工程(Create Project),默认的是Empty Ability。选择合适的模板,点击NEXT。
在这里插入图片描述
在新建项目配置界面,需要填写项目的基本信息,包括:

  • Project name:项目名称,建议使用有意义的名称以便于识别。
  • Bundle name:域名倒置,包名,通常为公司域名倒置加上项目名,例如com.example.myapp。注意保持包名的唯一性,它是应用打包上架的唯一标识。
  • Save location:项目保存路径,选择合适的目录保存项目文件。
    在这里插入图片描述
    设置完成后,点击finish,项目创建完毕。
    在这里插入图片描述

项目结构概述

创建项目后,IDE会自动生成项目的基本结构。对于鸿蒙应用项目,主要关注以下几个目录:

entry/src/main/ets/pages:存放页面代码,每个.ets文件代表一个页面。
entry/src/main/resources:存放资源文件,包括图片、字符串等。
entry/src/main/module.json5:配置文件,用于配置应用的权限、组件等信息。

重点关注entry,这是项目的入口模块(Ability)。
在这里插入图片描述
src文件夹是项目目录结构核心部分,它包含了项目的源代码资源文件。在src文件夹内部,有一个main文件夹,这个文件夹进一步组织了项目的不同组成部分。
main文件夹中包含两个关键的子文件夹:ets和resources
resources文件夹用于存放项目的所有资源文件,这些资源文件可能包括图片、图标、字符串常量、样式表等,它们为应用提供了必要的视觉和文本元素。
ets文件夹包含了应用的页面逻辑和界面布局。在ets文件夹中,pages子文件夹专门用于存放应用的页面文件。这些页面文件的后缀为.ets,用于定义应用的界面布局和用户交互逻辑。
在这里插入图片描述

运行项目

DevEco Studio提供了多种方式运行项目,包括预览、模拟器和真机运行

Preview预览

Preview预览器用于查看应用的UI界面效果,方便开发者随时调整界面布局。只需打开需要预览的.ets文件,点击IDE右侧的Previewer即可查看预览效果。
在这里插入图片描述
点击预览中的切换图标,还可以实现横屏竖屏的切换,方便查看效果。
在这里插入图片描述

模拟器运行

初次使用模拟器需要先进行安装。点击“Tools” > “Device Manager”,在设备管理器中点击“Install”下载模拟器相关的SDK,并按照提示完成安装。安装完成后,启动模拟器,并在IDE右上角选择模拟器作为运行设备,点击运行按钮即可在模拟器中运行应用。
在这里插入图片描述

真机运行

真机运行需要一台装有HarmonyOS系统的手机,系统版本最好为4.0.0及以上。首先,需要在手机上开启开发者模式和USB调试。然后,使用USB数据线将手机连接到电脑,在IDE中选择真机作为运行设备,点击运行按钮即可将应用安装并运行到真机上。

ArkUI框架简介

1. 装饰器
@Entry: 这个装饰器标记了Index组件是一个入口组件,即应用的起始点
@Component: 这个装饰器标记了Index是一个自定义组件,可以在其他组件中被复用
2. 组件结构
struct Index: 定义了一个名为Index的自定义组件。在ArkUI中,组件是UI的基本单元,用于构建应用的界面。
3. 状态管理
@State message: string = 'Hello World': 定义了一个名为message的状态变量,并初始化为字符串’Hello World’。状态变量用于存储组件的内部状态,当状态改变时,组件会重新渲染。
4. UI描述
build()是一个特殊的方法,用于声明式地描述组件的UI结构。在这个方法中,你可以使用ArkUI提供的内置组件和属性方法来构建组件的界面。
5. 内置组件
Row(): 创建一个行容器,用于水平布局。
Column(): 创建一个列容器,用于垂直布局。
Text(this.message): 创建一个文本组件,显示message状态变量的值。
6. 属性方法
.fontSize(50): 设置文本字体大小为50。
.fontWeight(FontWeight.Bold): 设置文本字体为粗体。
.fontColor(‘red’): 设置文本颜色为红色。
.onClick((event) => { this.message = ‘hello’ }): 设置文本的点击事件处理函数,当文本被点击时,将message状态变量的值改为’hello’。
7. 布局属性
.width(‘100%’): 设置容器的宽度为父容器宽度的100%。
.height(‘100%’): 设置容器的高度为父容器高度的100%。

在这里插入图片描述
在这里插入图片描述


总结

今日之学习篇章已然落笔,愿诸君有所收获。🤩
倘若您对此深感兴趣,不妨关注此专栏,新知将持续涌现,与您共舞思维的华章。😎
期待下次再会,愿我们于知识的海洋中,再度相聚,共赏智慧之花绽放。👍
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

撰写LabVIEW开发方案时,怎么结构清晰、内容详实?

撰写LabVIEW开发方案时,结构清晰、内容详实是至关重要的。以下是一些步骤和技巧,帮助你组织和编写一个高质量的LabVIEW开发方案: 1. 封面 项目名称公司名称日期作者 2. 目录 列出各章节及其页码 3. 摘要 项目概述:简要介绍项…

vue、react前端框架实现TodoList页面案例

原始TodoList网页(主要就是链接里网页应用ndex.html、styles.css、script.js ): https://blog.csdn.net/weixin_42357472/article/details/140657576 node、npn安装参考: https://blog.csdn.net/weixin_42357472/article/details/…

昇思25天学习打卡营第16天|GAN 图像生成指南:数据集和模型训练手册

目录 MindSpore 环境配置、MNIST 数据集下载及处理展开。 数据集可视化 隐码构造 模型构建 模型训练 效果展示 模型推理 MindSpore 环境配置、MNIST 数据集下载及处理展开。 首先,通过命令行操作安装特定版本的 MindSpore 库,并查看其版本。接着&a…

从零开始学习网络安全渗透测试之基础入门篇——(四)反弹SHELL不回显带外正反向连接防火墙出入站文件上传下载

一、反弹SHELL 反弹SHELL(Reverse Shell)是一种网络攻击技术,它允许攻击者在一个被入侵的计算机上执行命令,即使该计算机位于防火墙或NAT(网络地址转换)之后。通常,当攻击者无法直接连接到目标…

使用SpringEvent解决WebUploader大文件上传解耦问题

目录 前言 一、SpringEvent涉及的相关组件 1、 事件(Event) 2、事件监听器 3、事件发布器 二、WebUploader大文件处理的相关事件分析 1、事件发布的时机 2、事件发布的代码 三、事件监听器及实际的业务处理 1、文件上传处理枚举 2、文件上传监…

[红明谷CTF 2021]write_shell 1

目录 代码审计check()$_GET["action"] ?? "" 解题 代码审计 <?php error_reporting(0); highlight_file(__FILE__); function check($input){if(preg_match("/| |_|php|;|~|\\^|\\|eval|{|}/i",$input)){// if(preg_match("/| |_||p…

科普文:万字梳理31个Kafka问题

1、 kafka 是什么,有什么作用 2、Kafka为什么这么快 3、Kafka架构及名词解释 4、Kafka中的AR、ISR、OSR代表什么 5、HW、LEO代表什么 6、ISR收缩性 7、kafka follower如何与leader同步数据 8、Zookeeper 在 Kafka 中的作用&#xff08;早期&#xff09; 9、Kafka如何快…

软件测试的实质

一、软件缺陷定义 软件未实现产品说明书要求的功能软件出现了产品说明书指明不应该出现的错误软件实现了产品说明书未提到的功能&#xff1b;如罕见未实现产品说明书虽未明确提及但应该实现的目标软件难以理解、不易使用、运行速度慢&#xff0c;或者软件测试员认为最终用户会…

java——集合介绍【汇总】

一、集合的理解和好处 1.1、数组的不足 1、长度开始时必须指定&#xff0c;而且一旦指定&#xff0c;不能更改 2、保存的必须为同一类型的元素 3、使用数组进行增删&#xff0c;比较麻烦 1.2、集合 1、可以动态保存任意多个对象&#xff0c;使用比较方便! 2、提供了一系…

【前端 16】使用Ajax发送异步请求

Ajax 基础入门&#xff1a;实现异步请求 Ajax&#xff08;Asynchronous JavaScript and XML&#xff09;是一种在无需重新加载整个网页的情况下&#xff0c;能够更新部分网页的技术。通过使用 Ajax&#xff0c;可以在后台与服务器交换数据&#xff0c;这意味着可以在不影响用户…

解决hook汇编代码时空间不足的一种方法

思路&#xff1a;如下图&#xff0c;使用两条jmp指令。原内存地址使用一条jmp指令跳转到新开辟的内存空间(VirtualAlloc或者VirtualAllocEx函数&#xff09;&#xff0c;在新开辟的内存空间完成处理之后再使用jmp指令跳转到原内存地址合适的位置&#xff08;通常是原内存处被ho…

华为诺亚发布无限上下文大模型,超越SoTA 4.3%

你的大语言模型是不是也患上了"长文健忘症"&#xff1f;当使用大模型遇到长上下文时总是会出现词不达意&#xff1f;别担心&#xff0c;LLM界的"记忆大师"来啦&#xff01;华为诺亚方舟实验室最新推出的EM-LLM模型&#xff0c;就像是给大模型装上了"超…

光伏混合储能直流微网直流母线电压下垂控制MATLAB仿真

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 模型简介 此模型以混合储能系统为研究对象&#xff0c;采用基于关联参数SOC的改进下垂控制策略&#xff0c;将初始下垂系数与储能单元SOC的n次幂的比值作为现行下垂系数&#xff0c;通过改变n值&#xff0c;…

2.5 C#视觉程序开发实例2----图片内存管理

2.5 C#视觉程序开发实例2----图片内存管理 1 目标效果视频 mat-buffer 2 Mat 数组的定义 3 图片内存使用场合说明 3.1 程序加载或者切换程序时 3.2 设定时&#xff0c;注册图片 例如注册一个线速的图片 注册流程说明 3.3 外部触发时采集最新图片或者按钮点击时触发拍照 …

计算机毕业设计碾压导师Python+Django农产品推荐系统 农产品爬虫 农产品商城 农产品大数据 农产品数据分析可视化 PySpark Hadoop

基于Spark的农产品个性推荐系统 相关技术介绍: 1. Python Python是一种高级编程语言&#xff0c;具有简洁、易读、易学的特点&#xff0c;被广泛应用于Web开发、数据分析、人工智能等领域。 在此系统中&#xff0c;我们使用Python进行后端开发&#xff0c;利用其强大的语法…

图形引擎实战:Unity性能分析工具原理介绍

最近在维护一个Unity性能分析工具&#xff0c;类似UPR&#xff0c;客户端采集信息&#xff0c;WEB端显示数据。下面简单介绍下原理。 数据来源 Profiler数据 熟悉Unity的同学对Profiler一定不会陌生&#xff0c;我们的性能数据主要来源于它&#xff0c;主要包含函数耗时&…

Linux基础操作(下)

软件安装&#xff0c;CentOS系统和Ubuntu是使用不同的包管理器 CentOS使用yum管理器&#xff0c;Ubuntu使用apt管理器 在CentOS系统中&#xff0c;使用yum命令联网管理软件安装 yum语法: yum [-y] [install | remove | search ] 软件名称 在Ubuntu系统中&#xff0c;使用apt命…

如何跨越 LangChain 应用研发的最后一公里

说 [LangChain] 是现在最流行的 AI 应用开发框架&#xff0c;应该没有人出来反对吧。LangChain 的出现极大地简化了基于大型语言模型&#xff08;LLM&#xff09;的 AI 应用构建难度&#xff0c;如果把 AI 应用比作一个人的话&#xff0c;那么 LLM 相当于这个人的“大脑”&…

FRP配置内网穿透52版本以上适用

简述 适用frp配置内网穿透来说我们需要进行简单的区分&#xff0c;具有公网IP的服务器我们简称为服务端&#xff0c;内网的服务器我们可以简称为客户端&#xff0c;frp需要针对不同的服务器配置不同的文件 下载安装包 Linux下载地址 https://github.com/fatedier/frp/relea…

数据丢失不用愁!这四款数据恢复大师免费版助你找回珍贵回忆

我们在办公或者是生活中常常会遇到不小心将手机设备或者计算机当中的重要数据误删除/格式化/或其他不小心丢失的情况&#xff0c;但是不用紧张&#xff0c;这篇文章就是给大家分享如何恢复他们&#xff0c;以下带来除易我数据恢复外的其他好用的数据恢复软件&#xff1a; 第一…