<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[harmonyClassRoom的博客]]></title><description><![CDATA[专注鸿蒙开发领域的博主]]></description><link>https://blog.youkuaiyun.com/harmonyClassRoom</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; harmonyClassRoom]]></copyright><item><title><![CDATA[鸿蒙UI开发——组件的自适应拉伸]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148412184</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148412184</guid><author>harmonyClassRoom</author><pubDate>Tue, 03 Jun 2025 23:28:03 +0800</pubDate><description><![CDATA[做过前端开发的朋友应该使用过Flex布局，这是一个非常常用的布局方式，类似的，ArkUI也提供了Flex布局，我们在ArkUI中，可以借助flexGrow和flexShrink属性可以方便地实现自适应拉伸能力。]]></description><category></category></item><item><title><![CDATA[送你一本求职秘籍，请查收]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148412141</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148412141</guid><author>harmonyClassRoom</author><pubDate>Tue, 03 Jun 2025 23:24:55 +0800</pubDate><description><![CDATA[秋招大幕即将拉开，近期后台陆续收到许多朋友的私信，字里行间满是对面试技巧的迫切需求。针对大家最关注的高频问题，我系统梳理了面试核心要点，整理成这篇经验文，希望对找工作的你提供一些帮助，文末有面试秘籍(免费)，需要的自取【当然你也可以分享这篇文章给你身边需要的人】]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——badge角标的使用]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148197809</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148197809</guid><author>harmonyClassRoom</author><pubDate>Sat, 24 May 2025 23:08:53 +0800</pubDate><description><![CDATA[badge小红点角标是我们项目开发中常见的需求，信息标记组件，可以附加在单个组件上用于信息提醒的容器组件。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——Builder函数的封装]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148197623</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148197623</guid><author>harmonyClassRoom</author><pubDate>Sat, 24 May 2025 22:57:34 +0800</pubDate><description><![CDATA[我们在开发中可能会遇到这样一个问题：将一个@Builder修饰后的函数用变量或者数组记录下来，在业务其他地方使用这些@Builder函数。我们试图将builderElement这个builder方法放到builderArr数组中，然后统一在另一个Builder方法（testBuilder）中遍历执行。此时，我们在IDE中可以看到，会报一个如下的错误：为了解决这样的问题，ArkUI提供了wrapBuilder来让我们对Builder函数做封装。本文对wrapBuilder的使用做简单讨论。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——上拉抽屉的更新与事件回调]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148197587</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148197587</guid><author>harmonyClassRoom</author><pubDate>Sat, 24 May 2025 22:54:03 +0800</pubDate><description><![CDATA[本文介绍了在鸿蒙UI开发中如何动态更新上拉抽屉样式及实现数据回调。通过updateBindSheet接口可异步更新抽屉样式，支持增量或全量更新。回调父组件可通过参数传递callback函数实现，文中给出了具体代码示例，包括构建ComponentContent对象、更新背景色和关闭抽屉时的回调操作。完整示例展示了打开抽屉、修改样式和关闭回调的全流程，帮助开发者实现抽屉组件与父组件间的交互。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——实现一个上拉抽屉效果]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148125646</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148125646</guid><author>harmonyClassRoom</author><pubDate>Wed, 21 May 2025 22:34:44 +0800</pubDate><description><![CDATA[在ArkUI中，半模态页面是一种常见的临时交互方式，用户可以在主流程中弹出交互框，完成交互后继续主流程。ArkUI提供了bindSheet接口，用于快速实现半模态页面效果。该接口支持配置显示/隐藏控制、内容构造器及多种选项，如高度档位、模糊背景、标题、关闭图标等。通过bindSheet，开发者可以灵活定义半模态页面的样式和行为。本文通过一个案例展示了如何使用bindSheet实现上拉抽屉效果，包括按钮点击触发半模态页面显示，并配置了高度档位、模糊背景、标题等参数。该接口从API version 12开始支持]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——Builder与LocalBuilder对比]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148125543</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/148125543</guid><author>harmonyClassRoom</author><pubDate>Wed, 21 May 2025 22:27:24 +0800</pubDate><description><![CDATA[在ArkUI中，有的朋友应该接触过@Builder和@LocalBuilder。其中有了@LocalBuilder的存在，是为了解决组件的父子关系和状态管理的父子关系保持一致的问题。这里面最直观的表现则是this的指向问题与组件刷新问题，本文对@Builder与@LocalBuilder的这两个问题做简单讨论。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——隐私遮罩效果]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145682763</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145682763</guid><author>harmonyClassRoom</author><pubDate>Mon, 17 Feb 2025 14:43:02 +0800</pubDate><description><![CDATA[在为Image组件设置隐私遮罩时，最好设置一个默认宽高，因为如果图片是异步加载的，在图片加载完成前，如果没有默认宽高，会导致遮罩没有宽高信息。👉🏻 step2：我们为刚刚创建的文本组件与图片组件添加隐私遮罩（12、16行）​​​​​​​。如果我们为Text组件设置了属性字符串，将不会生效隐私遮罩，代码如下：​​​​​​​。👉🏻 step1：我们创建一个基本文本组件和图片显示组件，代码如下：​​​​​​​。目前支持的组件类型只有：Text文本组件、Image图片显示组件。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——时间选择器对话框(TimePickerDialog)]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145682686</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145682686</guid><author>harmonyClassRoom</author><pubDate>Mon, 17 Feb 2025 14:41:08 +0800</pubDate><description><![CDATA[在我们项目开发过程中，时常会遇到时间选择器的场景（如下图），ArkUI为我们提供了一套时间选择对话框，本文针对时间选择对话框的使用做简单介绍。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——键盘弹出避让模式设置]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145169774</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145169774</guid><author>harmonyClassRoom</author><pubDate>Wed, 15 Jan 2025 22:46:20 +0800</pubDate><description><![CDATA[我们在鸿蒙开发时，不免会遇到用户输入场景，当用户准备输入时，会涉及到输入法的弹出，我们的界面针对输入法的弹出有两种避让模式：上抬模式、压缩模式。下面针对输入法的两种避让模式的设置做简单介绍。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——文本级联选择器]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145169744</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145169744</guid><author>harmonyClassRoom</author><pubDate>Wed, 15 Jan 2025 22:43:04 +0800</pubDate><description><![CDATA[其中TextPickerDialogOptions，主要用于配置文本滑动选择器弹窗的参数。字段配置如下：名称类型说明range选择器的数据选择列表。不可设置为空数组，若设置为空数组，则不显示；若动态变化为空数组，则保持当前正常值显示。说明：单列数据选择器使用string[]，Resource，TextPickerRangeContent[]类型。多列数据选择器使用string[][]类型。多列联动数据选择器使用TextCascadePickerRangeContent[]类型。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——基于onTouch事件实现表情选择胶囊]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145125942</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145125942</guid><author>harmonyClassRoom</author><pubDate>Mon, 13 Jan 2025 23:01:49 +0800</pubDate><description><![CDATA[有朋友留言说，抖音APP中，长按评论按钮触发的快捷表情选择胶囊动画比较好（效果如下图），希望使用鸿蒙ArkTs也实现一个类似的。本文在鸿蒙ArkTs下也实现一个类似的效果，如下：首先，核心交互流程与抖音APP保持一致，即：长按一个按钮，我们可以在按钮旁边生成一个快捷表情选择胶囊；手指可以快捷的在候选表情上滑动，在选中的表情上停留时，该表情会稍微放大；动画细节上做了一些个人效果，例如：胶囊展示到界面时，候选表情做了一个类似IOS解锁时的类飞入效果；]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——颜色选择器]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145125895</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145125895</guid><author>harmonyClassRoom</author><pubDate>Mon, 13 Jan 2025 22:58:17 +0800</pubDate><description><![CDATA[取色对话框在实际项目开发中非常常见（效果类似如下图），有朋友留言希望讨论一下，那我们来实现一个基本的颜色选择器。申明：核心代码参考自项目：https://gitee.com/yranfantasy/harmony-color-picker。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——带农历的日期滑动选择弹窗]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145044634</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145044634</guid><author>harmonyClassRoom</author><pubDate>Thu, 09 Jan 2025 23:26:05 +0800</pubDate><description><![CDATA[说明：1.正常时序依次为：onWillAppear>>onDidAppear>>(onDateAccept/onCancel/onDateChange)>>onWillDisappear>>onDidDisappear。说明：1.正常时序依次为：onWillAppear>>onDidAppear>>(onDateAccept/onCancel/onDateChange)>>onWillDisappear>>onDidDisappear。弹窗遮蔽层区域，在遮蔽层区域内的事件不透传，在遮蔽层区域外的事件透传。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——日历选择器]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145044620</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/145044620</guid><author>harmonyClassRoom</author><pubDate>Thu, 09 Jan 2025 23:23:52 +0800</pubDate><description><![CDATA[在项目开发中，我们时常会用到日历选择器，效果如下：ArkUI已经为我们提供了组件，我们可以直接使用，下面针对日历组件做简单介绍。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——Toast即时提示框的使用]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144951568</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144951568</guid><author>harmonyClassRoom</author><pubDate>Sun, 05 Jan 2025 21:47:07 +0800</pubDate><description><![CDATA[Toast提示又称即时反馈，是一种临时性的消息提示框，用于向用户显示简短的操作反馈或状态信息。它通常在屏幕的底部或顶部短暂弹出，随后在一段时间后自动消失。即时反馈的主要目的是提供简洁、不打扰的信息反馈，避免干扰用户当前的操作流程。]]></description><category></category></item><item><title><![CDATA[鸿蒙开发——下载网络资源文件]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144951529</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144951529</guid><author>harmonyClassRoom</author><pubDate>Sun, 05 Jan 2025 21:44:56 +0800</pubDate><description><![CDATA[文件下载是一个非常常见的应用场景，我们可以通过使用ArkTs提供的上传下载模块（ohos.request）的下载接口将网络资源文件下载到应用文件目录。另外，对已下载的网络资源文件，我们可以使用基础文件IO接口（ohos.file.fs）对其进行访问，使用方式与应用文件访问一致。文件下载过程使用系统服务代理完成（在api12中request.agent.create接口增加了设置代理地址参数，支持我们设置自定义代理地址）。2、示 例。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——设置组件的内容填充方式]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144811921</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144811921</guid><author>harmonyClassRoom</author><pubDate>Sun, 29 Dec 2024 22:32:25 +0800</pubDate><description><![CDATA[组件在宽高变化时，如果我们设置了动画效果，但该组件同时又有内容，此时，可能会出现组件有动画效果，但组件包含的内容没有动画的问题。我们以Text文本组件为例：如果Text文本组件中有包含文字，此时我们将组件的尺寸变更触发动画时，可能会出现以下效果：从上述效果中我们可以看到，Text组件的宽高变化是按照动画平滑过渡，但是里面包含的文字发生了跳变，我们希望里面的文字也随着动画发生平滑过渡。效果如下（文章末尾有源码）：为了达到后者的效果，我们可以通过为组件设置renderFit属性来实现。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——组件的可见性控制]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144811900</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144811900</guid><author>harmonyClassRoom</author><pubDate>Sun, 29 Dec 2024 22:30:35 +0800</pubDate><description><![CDATA[visibility接口定义如下：控制当前组件显示或隐藏。根据具体场景需要可使用条件渲染代替。默认值：Visibility.VisibleNone // 隐藏，但不参与布局，不进行占位。其中，Hidden与None需要注意；当Visibility属性为Hidden时：展示效果可以类比为组件变成了全透明，即：占用的位置与空间都保留，只是组件看不见。当Visibility属性为None时：展示效果可以类比为组件完全不存在，即：完全不在界面中，不占空间也不占位置。有前端开发经验的朋友来看。]]></description><category></category></item><item><title><![CDATA[鸿蒙UI开发——使用WidthTheme实现局部深浅色]]></title><link>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144755169</link><guid>https://blog.youkuaiyun.com/harmonyClassRoom/article/details/144755169</guid><author>harmonyClassRoom</author><pubDate>Thu, 26 Dec 2024 23:22:40 +0800</pubDate><description><![CDATA[在实际的应用开发中，我们可能需要在界面中局部应用深色或者浅色的界面样式，与全局的深色、亮色同时生效。场景例如：深/亮色预览。此时，我们可以使用WithTheme能力来达到我们的效果。]]></description><category></category></item></channel></rss>