HarmonyOS鸿蒙Next卡片开发-卡片可选功能开发学习

HarmonyOS鸿蒙Next卡片开发-卡片可选功能开发学习

  1. 卡片编辑功能

卡片提供方提供一个卡片的编辑页面,允许从卡片跳转至编辑页面。

卡片提供方在配置文件config.json中添加参数“formConfigAbility”,配置参数信息的规则如下。

配置该参数的值,导航到编辑页面的Page ability,

格式:ability://单个ability名

如果不配置“formConfigAbility”参数,则无卡片编辑功能。

  1. 卡片背景模糊

卡片可以在config.json中声明是否支持背景模糊。声明方式如下:

config.json的metaData中,在customizeData中增加一个name为needBlurBackgroundForLauncher的字符串类型的属性, value为“true”表示支持, 否则为不支持。

"forms": [
  {
    "name": "Form_JS_DEMO",
    "description": "it is js form",
    "type": "JS",
    "jsComponentName": "card",
    "colorMode": "auto",
    "isDefault": true,
    "updateEnabled": true,
    "scheduledUpdateTime": "10:30",
    "defaultDimension": "2*2",
    "supportDimensions": [
      "2*2",
      "2*4"
    ],
    "metaData": {
      "customizeData": [
        {
          "name": "needBlurBackgroundForLauncher",
          "value": "true"
        }
      ]
    }
  }
]

卡片开发者可以从onCreateForm的回调中,获取是否支持背景模糊:

protected ProviderFormInfo onCreateForm(Intent intent) {
    ...... 
    // 1. 获取自定义数据
    IntentParams intentParams = intent.getParam(AbilitySlice.PARAM_FORM_CUSTOMIZE_KEY);
    
    // 2. 从intentParams中获取是否支持背景模糊
    boolean isSupport = (boolean) intentParams.getParam("fa_card_background_blur_support");
    ......
}

说明

背景模糊限制: 当前仅JS卡片支持背景模糊。

卡片背景模糊需要硬件支持,目前支持搭载麒麟9000或高通骁龙865及以上型号CPU的机型。使用其他机型可能无法预览到背景模糊效果。

本文主要参考官方开发文档。


更多关于HarmonyOS鸿蒙Next卡片开发-卡片可选功能开发学习的实战教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

支持一下,下很喜欢楼主的文章。

更多关于HarmonyOS鸿蒙Next卡片开发-卡片可选功能开发学习的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


多看楼主帖子长知识,顶一顶

找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17

对初学者很友好,谢谢楼主的分享

刚放假回来完全学不进去啊

在HarmonyOS鸿蒙Next中,卡片开发是一项关键功能,允许开发者创建动态、可交互的应用组件。

  • 布局设计:使用XML定义卡片的UI结构。
  • 数据绑定:通过JSON或JavaScript实现数据动态更新。
  • 事件处理:编写JavaScript代码处理用户交互事件。
  • 生命周期管理:掌握卡片的创建、更新和销毁流程。
  • 样式定制:利用CSS进行卡片外观的自定义。

建议参考官方文档和示例代码,逐步掌握这些技能。

回到顶部