前言本项目API>=13关于鸿蒙项目的组件化运行,已经分享了两种方式了,分别是IDE插件方式和node脚本方式,今天给大家带来第三种方式,Hvigor插件方式;和前两种方式不同的是,它的使用更加简单,不需要我们手动的去切换就能实现组件运行 本文标签:鸿蒙开发工具/DevEco Studio
前言本项目API>=13上篇文章,我们通过DevEco Studio插件实现了单一模块运行,相对来说,还是非常的便捷,毕竟是可视化操作,不过,插件有一个潜在的问题需要告知,那就是单一模块如果没有默认的页面 今天的内容同样也是和组件化运行相关的,只不过换了一种方式,那就是通过node脚本来实现。 把内容复制进去即可,如下图所示:脚本可分为四块,node start 为前两块,为固定模式,start为你的脚步文件名字,如果你保存的不是start名字,那么就改为你的名字即可;第三块是自己想要切换的组件名字 ,也就是你想让那个模块运行,第四块是默认的页面路径,这个可以不传,默认是pages/Index,执行案例如下:node start 模块名字鸿蒙开发是需要node环境的,一般不需要我们在额外配置,在下载 本文标签:鸿蒙开发工具/DevEco Studio
文章目录 一、Text 组件 二、Module 准备 三、代码示例 四、GitHub 地址 一、Text 组件 ---- Text 组件是在 UI 界面中显示文本的组件 ; 1. setTextSize ( ) 方法设置文字大小 ; 设置文字颜色 : 调用 Text 对象的 setTextColor ( ) 方法设置文字颜色 ; 二、Module 准备 ---- 继续使用上一篇博客 【鸿蒙 HarmonyOS】界面跳转 ( Page Ability 的 action 标识 | Page Ability 之间的界面跳转及传递数据 | 鸿蒙工程下创建 Module | 代码示例 ) 的项目进行演示 ; 在欢迎界面选择左侧 Version Control 中的 Git 选项 , 登录 GitHub 账号 , 将项目拉取到本地 ; 从 GitHub 上 Clone 代码 : 参考之前的 【鸿蒙 HarmonyOS】界面跳转 ( Page Ability 的 action 标识 | Page Ability 之间的界面跳转及传递数据 | 鸿蒙工程下创建 Module | 代码示例 ) 博客 ,
文章目录 一、布局文件中设置 Button 组件属性 二、代码中修改 Button 组件属性 三、Button 点击事件 四、完整代码示例 五、执行结果 六、GitHub 地址 一、布局文件中设置 Button 组件属性 ---- Button 组件是在 UI 界面中的按钮组件 , 重要的用户交互接口 ; 布局文件中设置 Button : Button 组件在布局文件中的示例 : <? : ohos:layout_alignment=“horizontal_center” , 上述配置标识组件水平居中 ; 背景设置属性 : ohos:background_element="#000000 " , 可以设置一个颜色值 ; 文本设置 : ohos:text=“你点啥” , 设置组件显示的文本为 “你点啥” ; 文本文字大小设置 : ohos:text_size=“150” 文本颜色设置 : ohos:text_color="#00FF00" , 绿色 ; 二、代码中修改 Button 组件属性 ---- 代码中设置 Button 属性 : 获取组件 : 调用 findComponentById
8')适合做富文本邮件、协议弹窗 进度条/标题栏联动.onProgressChange(e => this.curProgress = e.newProgress)0-100,可绑 Progress 组件 至此,鸿蒙 WebView(ArkWeb)开发所需 加载、通信、下载、跨域、性能 主线能力已全部覆盖,可直接搬入生产项目。祝开发顺利!
,那么基于此,我们可以通过自动化脚本,hvigor插件以及DevEco Studio插件来辅助我们快速的切换。 前两种形式,之前的文章分享过,关于重构后的使用方式,我们放到之后的文章中概述,本篇文章,我们重点概述一下利用DevEco Studio插件,来快速的实现组件化运行。 点击后就会弹出如下的窗口,非常的简洁:选择您需要执行组件化的模块,点击确定即可,它会自动把当前的模块修改为可运行状态,并且把之前的运行模块更改为共享模块。 当你切换模块之后,运行之前,请务必选择切换的模块,因为原有的模块已经改为共享包了,是无法运行的,也就是,组件化切换和运行模块需要保持一一对应。错误类型错误一: 00401021/00401022。 本文标签:鸿蒙开发工具/DevEco Studio
前言本项目API>=13在《鸿蒙开发:资讯项目实战之项目初始化搭建》一文中,遗留了一个问题,那就是,如何实现各个模块独立运行,其实关于组件化各模块独立运行,之前也写过三篇文章,分别探讨了运行包和共享包区别 ,nodeJs脚本实现组件化和hvigor插件形式进行组件化,奈何时间过去已久,之前的方式已不在通用,因为新的API更新迭代太快了,不知不觉API19已经到来,今年以来,已经更新了6个版本了,官方的速度如火箭一般 还是按照以往的顺序,我们从基本的运行包和共享包差异性分析,然后在着手利用脚本或插件帮我们快速实现组件化运行包切换,本篇文章,重点概述手动实现普通模块(共享包)运行。运行包和共享包什么是运行包? 然后就是复制需要的资源信息:同样的,主模块也是按照共享包里的配置进行更改,两个都互相改完之后,单独的模块就可以独立运行了,比如资讯项目中的home模块,改为之后,点击运行后,效果如下:相关总结组件化运行目的是为了减少编译时间 手动只是让大家了解切换的原理,在实际开发中,可不推荐手动,下篇文章,我们将通过脚本或者插件,快速实现组件化模块之间的切换,实现独立运行,敬请期待!本文标签:鸿蒙新闻资讯类应用
在鸿蒙开发中,TextInput组件可以在以下几种场景下获取焦点: 页面初始化时自动获取焦点:可以在页面加载完成后,通过调用TextInput组件的requestFocus()方法来自动获取焦点。 总的来说,TextInput组件可以在页面初始化、用户交互和编程方式等多种场景下获取焦点。 在鸿蒙开发中,TextInput组件可以在以下几种场景下获取焦点: 页面初始化时自动获取焦点:可以在页面加载完成后,通过调用TextInput组件的requestFocus()方法来自动获取焦点。 TextInput组件可以在页面初始化、用户交互和编程方式等多种场景下获取焦点。 在鸿蒙开发中,支付成功后没有收到回调可能是由于以下几个原因导致的: 没有正确配置支付回调接口:在鸿蒙开发中,支付成功后需要配置支付回调接口来接收支付结果通知。
https://gitee.com/openharmony/docs/tree/master/zh-cn 本篇文章就带领大家配置开发OpenHarmony的开发环境 下载并安装开发软件 首先,要开发鸿蒙软件 ,组件,应用,必须要使用官方提供的编辑器。 我在最开始搭建开发环境的时候走了很多弯路, 一开始我以为开发一个组件还需要鸿蒙的开发板,需要进行实名认证,需要配置签名,需要开启远程虚拟设备。浪费了很多时间。看官方文档也看的云里雾绕的。 下一篇文章我给大家分享一下,鸿蒙组件的路由,状态管理。
文章目录 一、布局中设置列表 ListContainer 组件 二、ListContainer 组件用法 三、完整代码示例 四、GitHub 地址 一、布局中设置列表 ListContainer 组件 height="match_content" ohos:width="match_parent"/> </DirectionalLayout> 二、ListContainer 组件用法 ---- ListContainer 组件涉及到如下两个问题 : ① 提供的数据源 ; ② 将数据源中的数据展示到列表中 ; 数据源是 RecycleItemProvider 类型对象 , 一般需要自定义子类继承 , 如果该参数不为空 , 直接使用该组件 , 如果该参数为空 , 就创建新的组件 ; ③ ComponentContainer componentContainer 参数 : 列表容器 ; @Override 代表每个列表项数据 */ class DataItem{ /** * 列表项字符串 */ public String text; /** * 构造函数初始化列表项
组件导航(Navigation)主要用于实现页面间以及组件内部的页面跳转,支持在不同组件间传递跳转参数,提供灵活的跳转栈操作,从而更便捷地实现对不同页面的访问和复用。
文章目录 一、布局文件中配置 Checkbox 组件 二、代码中配置 Checkbox 组件选中事件 三、完整代码示例 四、GitHub 地址 一、布局文件中配置 Checkbox 组件 ---- Checkbox 组件就是多选按钮 ; Checkbox 多选按钮之间不存在互斥关系 , 可以 同时选择 ; 如 : 给出 3 个 Checkbox 按钮 , 可以同时选中其中的 0 个 , 1 个 , match_content" ohos:text="多选按钮 0" ohos:text_size="100"/> </DirectionalLayout> 二、代码中配置 Checkbox 组件选中事件 super.onStart(intent); super.setUIContent(ResourceTable.Layout_ability_main); // 获取文本组件 } } 运行结果 : 四、GitHub 地址 ---- GitHub 主应用 : https://github.com/han1202012/HarmonyHelloWorld CheckBox 组件示例
文章目录 一、布局中设置拖动条 Slider 组件 二、代码中控制拖动条 Slider 组件 一、布局中设置拖动条 Slider 组件 ---- 注意该 Slider 组件与 进度条 Progressbar 组件的区别 , Progressbar 不能拖动 , 只有显示功能 ; 布局中设置的 Slider 拖动条 : <? background_element="#000000" , 黑色 ; 设置进度条颜色 : ohos:progress_color="#00FF00" , 绿色 ; 纯布局效果展示 : 二、代码中控制拖动条 Slider 组件 ---- 代码中控制拖动条 Slider 组件 : 界面中有 Slider , Button , Text 三个组件, 点击按钮 , 将 Slider 中的进度值显示到 Text 组件中 ; package
当然了,实现方式具有很多种,比如使用Stack层叠组件,让信息提示组件在最顶层。 ,需要自己来去控制信息标记的位置,在鸿蒙开发中,除了以上的方式之外,还非常贴心的给出了信息标记组件Badge来实现。 信息标记组件Badge信息标记组件,可以附加在单个组件上用于信息提醒的容器组件。 源码中支持两种参数,一个是根据数字创建标记组件的BadgeParamWithNumber,一个是根据字符串创建标记组件的BadgeParamWithString。 相关总结使用信息标记组件Badge,不需要我们在关注位置问题,我们通过position属性进行控制即可,而且针对信息的显示和隐藏,也不用过多的条件判断,可以说是非常的简单。
最近还在学习鸿蒙开发, 学到了PageSlider 滑动组件类似安卓里面 viewpager 可以实现 屏幕左右滑动的效果 ,那么废话不多说我们正式开始 准备工作 1 安装鸿蒙开发环境 大家可以看我之前的文章 RadioContainer> </DirectionalLayout> 布局这边是底部写了一个RadioContainer 来处理底部的小圆圈显示影藏效果 上面我们写了一个 PageSlider 组件 具体逻辑代码 ####初始化控件 radioContainer = (RadioContainer) findComponentById(ResourceTable.Id_radio_container PageSlider 滑动组件基本算是讲完了。 最后总结: 鸿蒙里面的 PageSlider 组件对标的是安卓的里面viewpager 做过安卓开发同学应该都比较熟悉 也容易理解 PageSlider 的各种用法包添加view 滑动监听 绑定适配器等等
不会封装的Coder不是一个好CV大师当我们的布局中有比较多的重复样式需要设置时,会增加很多相同类似的代码,增加维护成本,组件的抽离和复用是非常重要的,记下来举个例子。 相同属性和组件直接抽离封装,看结果://@Styles仅支持通用属性和通用事件//个人信息card属性@Styles function bgStyles () { .backgroundColor(' 30}) .padding({top:10,bottom:10}) .backgroundColor(Color.White) .borderRadius(10)}//@Extend支持封装指定组件的私有属性
AttributeModifier @Styles和@Extend,虽然可以解决组件样式重复的问题,单也仅仅是页面或者组件之内,无法满足多个页面或多个组件共用的场景,而且两者内部也无法进行业务逻辑编写, applySelectedAttribute(instance: T) : void//组件选中状态的样式 自定义一个类实现AttributeModifier接口,你要实现那个组件的属性复用,泛型就设置对应的组件属性即可 ,目前,基本上大部分组件属性都有。 : Length //组件普通状态时的样式。 (this.modifier) 相关总结 如果要实现多页面之间的组件属性样式复用,建议使用AttributeModifier,如果是单页面,通用属性可以使用@Styles,组件自有属性可以使用@Extend
在日常开发中,如果你有类似「左侧导航 + 右侧内容」的布局需求,比如后台管理界面、文件管理器、设置页等,SideBarContainer 是非常值得掌握的组件。 组件简介 SideBarContainer 是 HarmonyOS 提供的一个双区域容器,固定由两个子组件组成: 第一个子组件表示侧边栏; 第二个子组件表示主内容区。 组件内部已实现侧边栏的显示与隐藏逻辑,开发者只需关注如何传入正确结构和控制显示行为即可。 '显示' : '隐藏')) }) } } 核心知识点说明 子组件数量限制 必须且只能两个子组件,否则布局会异常。 一个子组件 → 只展示侧边栏。 超过两个 → 只保留前两个。 总结建议 SideBarContainer 是构建复杂结构页面时非常实用的组件,重点在于理解它对子组件数量的限制、布局样式的选择逻辑、以及各类尺寸控制参数。
在HarmonyOS的Web组件中,可以通过以下方式进行页面跳转: 1. 使用WebView的跳转方法:如果Web组件中嵌入了WebView组件,可以使用WebView的相关方法进行页面跳转,例如: var webView = document.getElementById(
一、引言:Column 组件 —— 垂直布局的标准解决方案在鸿蒙应用开发体系中,Column 容器组件作为垂直布局的核心载体,通过声明式语法实现子组件的有序垂直排列。 .width('100%') Text('列表项3') .width('100%') }最佳实践:常规列表:8-16vp卡片式布局:16-24vp表单元素:12-18vp鸿蒙编码习惯 radius: 4, color: '#00000010', offsetX: 2, offsetY: 2 }) }}五、工程实践最佳指南5.1 性能优化策略布局扁平化: —— 垂直布局的核心引擎鸿蒙 Column 组件通过标准化的属性体系,实现了垂直布局的高效开发,是构建现代化界面的基础组件。 :空间管理:通过space控制垂直间距,justifyContent与alignItems实现精准对齐尺寸策略:结合百分比宽度、固定值与弹性布局,实现多端适配场景模板:表单、列表、卡片等高频场景的标准化实现模式随着鸿蒙生态向全场景拓展