- 今天我们用 onTouch 做一个常见手势小实验:单指移动、双击缩放、单指旋转、双指旋转和双指捏合缩放。 如果把这些动作全靠多个 Gesture 堆到同一个节点上,新手很容易先被冲突绕进去。所以这一篇我们直接读触点:一个手指看位置变化,两个手指看距离和角度变化。操作对象用本地的 iconhuawei.svg,这样你能很 今天我们用 onTouch 做一个常见手势小实验:单指移动、双击缩放、单指旋转、双指旋转和双指捏合缩放。 如果把这些动作全靠多个 Gesture 堆到同一个节点上,新手很容易先被冲突绕进去。所以这一篇我们直接读触点:一个手指看位置变化,两个手指看距离和角度变化。操作对象用本地的 iconhuawei.svg,这样你能很
- 书籍是人类进步的阶梯,在手机上阅读电子书,既可以学习又可以娱乐。早在2022年出版的《Android Studio开发实战:从零基础到App上线(第3版)》中,笔者就基于Android实现了一个具备翻页浏览功能的电子书APP,不仅支持常见的PDF格式,还支持开放标准EPUB格式,还支持古籍数字化的DJVU格式,可谓小巧的电子书架。《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》... 书籍是人类进步的阶梯,在手机上阅读电子书,既可以学习又可以娱乐。早在2022年出版的《Android Studio开发实战:从零基础到App上线(第3版)》中,笔者就基于Android实现了一个具备翻页浏览功能的电子书APP,不仅支持常见的PDF格式,还支持开放标准EPUB格式,还支持古籍数字化的DJVU格式,可谓小巧的电子书架。《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》...
- 今天我们只看三个单一手势:TapGesture、LongPressGesture、PanGesture。 手势最怕混着讲。点击、长按、拖动本来就是三种不同意图,先把它们拆开跑通,后面再谈组合和冲突会轻松很多。 参考文档: https://developer.huawei.com/consumer/cn/doc/harm 今天我们只看三个单一手势:TapGesture、LongPressGesture、PanGesture。 手势最怕混着讲。点击、长按、拖动本来就是三种不同意图,先把它们拆开跑通,后面再谈组合和冲突会轻松很多。 参考文档: https://developer.huawei.com/consumer/cn/doc/harm
- 今天我们给三张卡片加上焦点能力。 很多页面只考虑手指点击,结果一接键盘、遥控器或者无障碍操作,页面就不知道该往哪走。焦点处理解决的就是这个问题:谁能获得焦点、焦点顺序是什么、获得焦点后有没有明显边框。 参考文档: https://developer.huawei.com/consumer/cn/doc/harmonyo 今天我们给三张卡片加上焦点能力。 很多页面只考虑手指点击,结果一接键盘、遥控器或者无障碍操作,页面就不知道该往哪走。焦点处理解决的就是这个问题:谁能获得焦点、焦点顺序是什么、获得焦点后有没有明显边框。 参考文档: https://developer.huawei.com/consumer/cn/doc/harmonyo
- 今天我们只看软键盘和输入组件的关系:什么时候弹、弹什么、怎么收。 软键盘很容易被写成一个完整聊天页、表单页或者支付页。那样当然真实,但主题会散。这个 Demo 只保留三个最基础的点:系统键盘、不自动弹键盘、自定义键盘。 系统键盘 最普通的输入框,获取焦点就弹系统键盘: enterKeyType 控制键盘右下角按钮的语义 今天我们只看软键盘和输入组件的关系:什么时候弹、弹什么、怎么收。 软键盘很容易被写成一个完整聊天页、表单页或者支付页。那样当然真实,但主题会散。这个 Demo 只保留三个最基础的点:系统键盘、不自动弹键盘、自定义键盘。 系统键盘 最普通的输入框,获取焦点就弹系统键盘: enterKeyType 控制键盘右下角按钮的语义
- 今天我们做一个输入事件观察页,看 onTouch、onHover、onMouse 和 onKeyEvent 分别适合什么。 同一个页面在手机、平板、2in1 设备上,输入来源可能完全不同。手指更关心触摸动作,鼠标有悬停和按键,键盘还要先处理焦点。我们先用最小 Demo 看清楚它们的差别。 参考文档: https://d 今天我们做一个输入事件观察页,看 onTouch、onHover、onMouse 和 onKeyEvent 分别适合什么。 同一个页面在手机、平板、2in1 设备上,输入来源可能完全不同。手指更关心触摸动作,鼠标有悬停和按键,键盘还要先处理焦点。我们先用最小 Demo 看清楚它们的差别。 参考文档: https://d
- 今天我们先用一个小页面,把 ArkUI 里最基础的交互边界跑一遍:按钮点击、卡片点击、禁用态和点击区域。 交互响应不是“能点就行”。新手最容易犯的错,是把所有动作都塞进 onClick,然后让用户猜哪里能点、点了会发生什么。我们这篇先不碰复杂手势,只把最普通的点击关系摆清楚。 参考文档: https://develop 今天我们先用一个小页面,把 ArkUI 里最基础的交互边界跑一遍:按钮点击、卡片点击、禁用态和点击区域。 交互响应不是“能点就行”。新手最容易犯的错,是把所有动作都塞进 onClick,然后让用户猜哪里能点、点了会发生什么。我们这篇先不碰复杂手势,只把最普通的点击关系摆清楚。 参考文档: https://develop
- 这一篇我们只看 clipShape。它的作用很直接:把一个组件按指定形状裁掉。图片可以裁,文本标签可以裁,卡片也可以裁。 Demo 里有三种常见用法 第一种是圆形裁剪。头像、入口图标、圆形徽章,都可以用 CircleShape。 第二种是圆角矩形。我们用 RectShape 裁图片和标签。它适合那些“只想把边角收一下” 这一篇我们只看 clipShape。它的作用很直接:把一个组件按指定形状裁掉。图片可以裁,文本标签可以裁,卡片也可以裁。 Demo 里有三种常见用法 第一种是圆形裁剪。头像、入口图标、圆形徽章,都可以用 CircleShape。 第二种是圆角矩形。我们用 RectShape 裁图片和标签。它适合那些“只想把边角收一下”
- 这一篇我们看 Path。如果一个图形已经不是圆、线、矩形能舒服表达的样子,就别再用一堆布局硬拼了,直接写路径会更干净。 commands 是重点 Path 的核心是 commands。你可以先记住几个常用字母: M:移动到某个点。 L:连线到某个点。 C:画三次贝塞尔曲线。 Z:闭合当前路径。 Demo 第一块用 M 这一篇我们看 Path。如果一个图形已经不是圆、线、矩形能舒服表达的样子,就别再用一堆布局硬拼了,直接写路径会更干净。 commands 是重点 Path 的核心是 commands。你可以先记住几个常用字母: M:移动到某个点。 L:连线到某个点。 C:画三次贝塞尔曲线。 Z:闭合当前路径。 Demo 第一块用 M
- 这一篇我们把几何图形单独拎出来。Rect、Circle、Ellipse、Line、Polyline、Polygon 都不难,但它们能解决很多“小地方不好看”的问题。 Demo 里先分两类 第一类是基础形状:矩形、圆、椭圆。它们适合做背景块、图标底、状态点。第二类是线和点集:直线、折线、多边形。它们更适合做分隔、走势、徽 这一篇我们把几何图形单独拎出来。Rect、Circle、Ellipse、Line、Polyline、Polygon 都不难,但它们能解决很多“小地方不好看”的问题。 Demo 里先分两类 第一类是基础形状:矩形、圆、椭圆。它们适合做背景块、图标底、状态点。第二类是线和点集:直线、折线、多边形。它们更适合做分隔、走势、徽
- 今天我们先不碰复杂绘图,只把 Shape 当成一块轻量画板来用。页面里那些小背景、小标识、小装饰线,如果每次都切图,维护起来会很累;用 Shape 直接画,很多时候更省事。 先看这个页面画了什么 这个 Demo 分成四块: 第一块把 Rect、Circle、Path 放进同一个 Shape 里,先建立“容器 + 子图形 今天我们先不碰复杂绘图,只把 Shape 当成一块轻量画板来用。页面里那些小背景、小标识、小装饰线,如果每次都切图,维护起来会很累;用 Shape 直接画,很多时候更省事。 先看这个页面画了什么 这个 Demo 分成四块: 第一块把 Rect、Circle、Path 放进同一个 Shape 里,先建立“容器 + 子图形
- 用手指点屏幕,"点"和"选"是同一个动作,用户不会怀疑自己到底点了没有。换成视线就麻烦了:人眼每分钟要做上万次无意识的扫视,如果每看一眼就触发一次,界面会疯掉。这就是视线交互要解决的核心矛盾——如何从连绵不断的眼动里,分辨出哪一次才是"我想点它"。这篇讲凝视点选(Gaze Selection)的原理、注视触发(Dwell)的参数设计,以及怎么把抖动和误触压下去。 凝视点选与迈达斯之触视线交互... 用手指点屏幕,"点"和"选"是同一个动作,用户不会怀疑自己到底点了没有。换成视线就麻烦了:人眼每分钟要做上万次无意识的扫视,如果每看一眼就触发一次,界面会疯掉。这就是视线交互要解决的核心矛盾——如何从连绵不断的眼动里,分辨出哪一次才是"我想点它"。这篇讲凝视点选(Gaze Selection)的原理、注视触发(Dwell)的参数设计,以及怎么把抖动和误触压下去。 凝视点选与迈达斯之触视线交互...
- 深浅色适配不是把白底改成黑底。页面里的文字、边框、按钮和状态反馈都要重新检查对比度和语义。 本篇边界 这篇只做页面局部预览,不调用全局 setColorMode,也不改应用级主题策略。真实项目里,全局深浅色切换应由产品策略、系统设置和应用配置一起决定。 WithTheme 只改变主题资源的解析方式;硬编码十六进制颜色不 深浅色适配不是把白底改成黑底。页面里的文字、边框、按钮和状态反馈都要重新检查对比度和语义。 本篇边界 这篇只做页面局部预览,不调用全局 setColorMode,也不改应用级主题策略。真实项目里,全局深浅色切换应由产品策略、系统设置和应用配置一起决定。 WithTheme 只改变主题资源的解析方式;硬编码十六进制颜色不
- 主题不是给页面换一套好看的颜色。主题令牌要回答颜色的职责:哪个是品牌主色,哪个是警示色,哪个代表确认结果,哪个承担主要正文。 本篇边界 这篇只做 CustomTheme / ThemeControl 的最小示例,不扩展成完整设计系统。示例只列 4 个常用颜色令牌,避免一开始维护一大套无人使用的 token。 交互预期 主题不是给页面换一套好看的颜色。主题令牌要回答颜色的职责:哪个是品牌主色,哪个是警示色,哪个代表确认结果,哪个承担主要正文。 本篇边界 这篇只做 CustomTheme / ThemeControl 的最小示例,不扩展成完整设计系统。示例只列 4 个常用颜色令牌,避免一开始维护一大套无人使用的 token。 交互预期
- 今天我们用 stateStyles 给按钮的不同状态配不同外观。 很多新手写按钮时,只写 normal 样式。结果按下、聚焦、禁用都差不多,用户很难判断当前控件到底能不能点、有没有被选中。stateStyles 解决的是这个视觉反馈问题。 参考文档:组件扩展 先说结论 stateStyles 适合: 按下时给反馈。 聚 今天我们用 stateStyles 给按钮的不同状态配不同外观。 很多新手写按钮时,只写 normal 样式。结果按下、聚焦、禁用都差不多,用户很难判断当前控件到底能不能点、有没有被选中。stateStyles 解决的是这个视觉反馈问题。 参考文档:组件扩展 先说结论 stateStyles 适合: 按下时给反馈。 聚
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签