[文章]HarmonyOS应用开发-修改卡片内容

阅读量0
0
2
卡片内容修改分为三种:
1.定时自动修改
修改配置文件,可以定时刷新其内容
“scheduledUpdateTime”: “10:30”
到点后会自动调用updateFormData(long formId, Object… vars)的内容,自动刷新卡片,我们只需要修改其内容,让卡片刷新成我们想要的页面。
2.卡片请求修改
在WidgetImpl下的onTriggerFormEvent(long formId, String message)方法,会接收卡片传回来的数据,我们可以根据传回来的数据刷新页面。
Json文件发生消息
“actions”: {
“getNext”: {
"action": "message","params": {  "mAction": "next"}}
}
后台获取处理
@Override
public void onTriggerFormEvent(long formId, String message) {
ZSONObject zsonObject = ZSONObject.stringToZSON(message);// Do something here after receive the message from js cardZSONObject result = new ZSONObject();switch (zsonObject.getString("mAction")) {        case "next":        id=(id+1)%4;        result.put("name", album.getMusicName(id));        result.put("introduce", album.getIntroduce(id) );        result.put("imageUri", album.getImageUri(id));        HiLog.info(TAG, "播放音乐:"+album.getMusicName(id));        initPlay("next");        break;    default:        break;}// Update js cardtry {    if (mContext instanceof Ability) {        ((Ability) mContext).updateForm(formId, new FormBindingData(result));    }} catch (FormException e) {    HiLog.error(TAG, e.getMessage());}}
3.后台主动修改
会台处理和卡片请求更新类似,都是要使用updateForm(formId, new FormBindingData(result))方法,但需要知道卡片的formId,可以在卡片创建记录下来。
本文主要根据官方文档学习体验整理
附件:

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友