当前位置: 首页 > news >正文

会计网站建设个人做门户网站

会计网站建设,个人做门户网站,wordpress 增加浏览数,百度账号免费注册根据卡片状态刷新不同内容 相同的卡片可以添加到桌面上实现不同的功能#xff0c;比如添加两张桌面的卡片#xff0c;一张显示杭州的天气#xff0c;一张显示北京的天气#xff0c;设置每天早上7点触发定时刷新#xff0c;卡片需要感知当前的配置是杭州还是北京#xff…根据卡片状态刷新不同内容 相同的卡片可以添加到桌面上实现不同的功能比如添加两张桌面的卡片一张显示杭州的天气一张显示北京的天气设置每天早上7点触发定时刷新卡片需要感知当前的配置是杭州还是北京然后将对应城市的天气信息刷新到卡片上以下示例介绍了如何根据卡片的状态动态选择需要刷新的内容。 卡片配置文件配置每天早上7点触发定时刷新 {forms: [{name: widget,description: This is a service widget.,src: ./ets/widget/pages/WidgetCard.ets,uiSyntax: arkts,window: {designWidth: 720,autoDesignWidth: true},colorMode: auto,isDefault: true,updateEnabled: true,scheduledUpdateTime: 07:00,updateDuration: 0,defaultDimension: 2*2,supportDimensions: [2*2]}] }卡片页面卡片具备不同的状态选择在不同的状态下需要刷新不同的内容因此在状态发生变化时通过postCardAction通知EntryFormAbility。 let storage new LocalStorage(); Entry(storage) Component struct WidgetCard {LocalStorageProp(textA) textA: string 待刷新...;LocalStorageProp(textB) textB: string 待刷新...;State selectA: boolean false;State selectB: boolean false;build() {Column() {Row() {Checkbox({ name: checkbox1, group: checkboxGroup }).select(false).onChange((value: boolean) {this.selectA value;postCardAction(this, {action: message,params: {selectA: JSON.stringify(value)}});})Text(状态A)}Row() {Checkbox({ name: checkbox2, group: checkboxGroup }).select(false).onChange((value: boolean) {this.selectB value;postCardAction(this, {action: message,params: {selectB: JSON.stringify(value)}});})Text(状态B)}Row() { // 选中状态A才会进行刷新的内容Text(状态A: )Text(this.textA)}Row() { // 选中状态B才会进行刷新的内容Text(状态B: )Text(this.textB)}}.padding(10%)} }EntryFormAbility将卡片的状态存储在本地数据库中在刷新事件回调触发时通过formId获取当前卡片的状态然后根据卡片的状态选择不同的刷新内容。 import formInfo from ohos.app.form.formInfo import formProvider from ohos.app.form.formProvider; import formBindingData from ohos.app.form.formBindingData; import FormExtensionAbility from ohos.app.form.FormExtensionAbility; import dataStorage from ohos.data.storageexport default class EntryFormAbility extends FormExtensionAbility {onAddForm(want) {let formId want.parameters[formInfo.FormParam.IDENTITY_KEY];let isTempCard: boolean want.parameters[formInfo.FormParam.TEMPORARY_KEY];if (isTempCard false) { // 如果为常态卡片直接进行信息持久化console.info(Not temp card, init db for: formId);let storeDB dataStorage.getStorageSync(this.context.filesDir myStore)storeDB.putSync(A formId, false);storeDB.putSync(B formId, false);storeDB.flushSync();}let formData {};return formBindingData.createFormBindingData(formData);}onRemoveForm(formId) {console.info(onRemoveForm, formId: formId);let storeDB dataStorage.getStorageSync(this.context.filesDir myStore)storeDB.deleteSync(A formId);storeDB.deleteSync(B formId);}// 如果在添加时为临时卡片则建议转为常态卡片时进行信息持久化onCastToNormalForm(formId) {console.info(onCastToNormalForm, formId: formId);let storeDB dataStorage.getStorageSync(this.context.filesDir myStore)storeDB.putSync(A formId, false);storeDB.putSync(B formId, false);storeDB.flushSync();}onUpdateForm(formId) {let storeDB dataStorage.getStorageSync(this.context.filesDir myStore)let stateA storeDB.getSync(A formId, false).toString()let stateB storeDB.getSync(B formId, false).toString()// A状态选中则更新textAif (stateA true) {let formInfo formBindingData.createFormBindingData({textA: AAA})formProvider.updateForm(formId, formInfo)}// B状态选中则更新textBif (stateB true) {let formInfo formBindingData.createFormBindingData({textB: BBB})formProvider.updateForm(formId, formInfo)}}onFormEvent(formId, message) {// 存放卡片状态console.info(onFormEvent formId: formId msg: message);let storeDB dataStorage.getStorageSync(this.context.filesDir myStore)let msg JSON.parse(message)if (msg.selectA ! undefined) {console.info(onFormEvent selectA info: msg.selectA);storeDB.putSync(A formId, msg.selectA);}if (msg.selectB ! undefined) {console.info(onFormEvent selectB info: msg.selectB);storeDB.putSync(B formId, msg.selectB);}storeDB.flushSync();} };说明 通过本地数据库进行卡片信息的持久化时建议先在onAddForm生命周期中通过TEMPORARY_KEY判断当前添加的卡片是否为常态卡片如果是常态卡片则直接进行卡片信息持久化如果为临时卡片则可以在卡片转为常态卡片(onCastToNormalForm)时进行持久化同时需要在卡片销毁(onRemoveForm)时删除当前卡片存储的持久化信息避免反复添加删除卡片导致数据库文件持续变大。 使用方刷新卡片内容仅对系统应用开放 当使用方添加了一些周期性刷新的卡片后由于周期性刷新的时间间隔限制可以在使用方中提供按钮主动触发卡片的刷新。这种场景下使用方可以通过调用requestForm接口请求卡片刷新系统会调用卡片提供方FormExtensionAbility中的onUpdateForm生命周期回调在回调中可以使用updateForm接口刷新卡片内容。onUpdateForm生命周期回调参考通过FormExtensionAbility刷新卡片内容。 import formHost from ohos.app.form.formHost;Entry() Component struct WidgetCard {formId ...; // 卡片IDbuild() {Button(刷新卡片).type(ButtonType.Capsule).width(50%).height(50).onClick(() {console.info(FormAbility update form click);// formId需要为实际需要刷新的卡片IDformHost.requestForm(this.formId.toString()).then(() {console.info(Succeeded in requestForming.);});})...} }
http://www.zqtcl.cn/news/648914/

相关文章:

  • 秀洲住房与建设局网站徐州建设工程招投标官方网站
  • 做公司网站要注意哪些问题做章的网站
  • 南京建设网站维护洛阳最新通告今天
  • 网站名称创意大全wordpress公开课插件
  • 淮安市城市建设档案馆网站可以做网页的软件
  • 网站空间服务器wordpress 排除置顶文章
  • 有域名后怎么做网站邯郸做移动网站的地方
  • 商标可以做网站吗网站开发的大学生应届简历
  • 长沙长沙网站建设公司saas系统架构
  • 成都销售型网站长春财经学院多大
  • 手机自己制作表白网站app项目网络计划图怎么画
  • 品牌网站如何做seo浏览器正能量网址
  • 开封做网站哪家好网页设计制作网站大一素材
  • 河南网站域名备案莱芜新闻电视台节目表
  • 长春网站建设新格做天猫还是做网站推广
  • 新网站建设的感想安阳区号是什么
  • 余姚市城乡建设局网站wordpress 预览插件
  • 游戏开发和网站开发wordpress foreign trade
  • 网站设计 原型图html购物网站模板
  • 谷歌网站推广报价国产搜什么关键词最好看
  • 婚礼网站有哪些个人做网站需要什么条件
  • 深圳企业网站seo人才招聘网站建设
  • 谷歌下载seo是什么软件
  • 个人网站设计分析小程序在线制作平台
  • 网站开发 一般用什么语言vi视觉设计案例
  • 微信公众平台官方网官网seo优化找哪家做
  • 简约 网站模板网站目录链接怎么做
  • 国内地铁建设公司网站大连做网站外包
  • 微网站营销是什么网站图片上传代码
  • 外包公司做网站多少用vs做的网站怎么打开