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

网站开发和程序开发gif表情包制作网站

网站开发和程序开发,gif表情包制作网站,郑州短视频代运营公司,wordpress模板标签UIExtensionComponent用于支持在本页面内嵌入其他应用提供的UI。展示的内容在另外一个进程中运行#xff0c;本应用并不参与其中的布局和渲染。 通常用于有进程隔离诉求的模块化开发场景。 说明#xff1a; 该组件从API Version 10开始支持。后续版本如有新增内容#xff0…UIExtensionComponent用于支持在本页面内嵌入其他应用提供的UI。展示的内容在另外一个进程中运行本应用并不参与其中的布局和渲染。 通常用于有进程隔离诉求的模块化开发场景。 说明 该组件从API Version 10开始支持。后续版本如有新增内容则采用上角标单独标记该内容的起始版本。 本模块为系统接口。 使用约束 本组件不支持预览。 被拉起的Ability必须是带UI的Ability扩展如何实现带UI的Ability扩展请参考实现带UI的Ability扩展。 必须显示设置组件宽高为非0有效值。 子组件 无 接口 UIExtensionComponent(want: Want, options?: UIExtensionOptions) 参数 参数名参数类型必填参数描述wantWant是要加载的Ability。options11UIExtensionOptions否需要传递的构造项。 属性 支持通用属性。 事件 不支持通用事件。 将事件经过坐标转换后传递给对端Ability处理。 支持以下事件 onRemoteReady onRemoteReady(callback: CallbackUIExtensionProxy) UIExtensionAbility连接完成时的回调之后可使用proxy向被拉起的Ability发送数据。 参数 参数名类型说明proxyUIExtensionProxy用于向对端Ability发送数据。 onReceive onReceive(callback: Callback{ [key: string]: Object }) 收到被拉起的Ability发送的数据时触发的回调。 参数 参数名类型说明data{ [key: string]: Object }收到来自对端Ability的数据。 onResult onResult(callback: Callback{code: number; want?: Want}) 被拉起的Ability扩展调用terminateSelfWithResult时会先触发本回调函数再触发OnRelease。 本回调内可处理对端Ability的结果数据可参考AbilityResult。 参数 参数名类型说明codenumber收到来自对端Ability的处理結果code。wantWant收到来自对端Ability的处理結果Want。 onRelease onRelease(callback: Callbacknumber) 用于处理被拉起的Ability销毁时的回调。 被拉起的Ability扩展调用terminateSelfWithResult或者terminateSelf时会触发本回调此时releaseCode为0即正常销毁。 被拉起的Ability扩展意外Crash或被kill时触发本回调此时releaseCode为1。 参数 参数名类型说明releaseCodenumber对端Ability销毁时的code0为正常销毁1为异常销毁。 onError onError(callback:ErrorCallback) 被拉起的Ability扩展在运行过程中发生异常时触发本回调。可通过回调参数中的code、name和message获取错误信息并做处理。 参数 参数名类型说明errBusinessError报错信息。 UIExtensionOptions11 用于在UIExtensionComponent进行构造的时传递可选的构造参数。 参数 参数名参数类型必填参数描述isTransferringCallerboolean否在使用UIExtensionComponent嵌套时设置当前UIExtensionComponent是否转发上一级的Caller信息。 默认值false。 UIExtensionProxy 用于在双方建立连接成功后组件使用方向被拉起的Ability发送数据、订阅和取消订阅注册。 send send(data: { [key: string]: Object }): void 用于在双方建立连接成功后组件使用方向被拉起的Ability发送数据的场景提供异步发送数据。 系统能力 SystemCapability.ArkUI.ArkUI.Full 参数 参数名参数类型必填参数描述data{ [key: string]: Object }是异步发送给被拉起的扩展Ability的数据。 sendSync11 sendSync(data: { [key: string]: Object }): { [key: string]: Object } 用于在双方建立连接成功后组件使用方向被拉起的Ability发送数据的场景提供同步发送数据。 系统能力 SystemCapability.ArkUI.ArkUI.Full 参数 参数名参数类型必填参数描述data{ [key: string]: Object }是同步发送给被拉起的扩展Ability的数据。 返回值 类型描述{ [key: string]: Object }扩展Ability回复的数据。 错误码 错误号描述100011扩展Ability未注册同步回调100012数据发送失败 on(asyncReceiverRegister)11 on(type: asyncReceiverRegister, callback: (proxy: UIExtensionProxy) void): void 用于在双方建立连接成功后组件使用方订阅被拉起的Ability发生异步注册的场景。 系统能力 SystemCapability.ArkUI.ArkUI.Full 参数 参数名参数类型必填参数描述typestring是代表订阅扩展Ability发生异步注册回调。callback(proxy: UIExtensionProxy) void是订阅扩展Ability注册setReceiveDataCallback后触发的回调。 on(syncReceiverRegister)11 on(type: syncReceiverRegister, callback: (proxy: UIExtensionProxy) void): void 用于在双方建立连接成功后组件使用方订阅被拉起的Ability发生同步注册的场景。 系统能力 SystemCapability.ArkUI.ArkUI.Full 参数 参数名参数类型必填参数描述typestring是订阅扩展Ability发生同步注册回调。callback(proxy: UIExtensionProxy) void是扩展Ability注册setReceiveDataForResultCallback后触发的回调。 off(asyncReceiverRegister)11 off(type: asyncReceiverRegister, callback?: (proxy: UIExtensionProxy) void): void 用于在双方建立连接成功后组件使用方取消订阅被拉起的Ability发生异步注册的场景。 系统能力 SystemCapability.ArkUI.ArkUI.Full 参数 参数名参数类型必填参数描述typestring是取消订阅扩展Ability发生异步注册回调。callback(proxy: UIExtensionProxy) void否为空代表取消订阅所有扩展Ability异步注册后触发回调。 非空代表取消订阅异步对应回调。 off(syncReceiverRegister)11 off(type: syncReceiverRegister, callback?: (proxy: UIExtensionProxy) void): void 用于在双方建立连接成功后组件使用方取消订阅被拉起的Ability发生同步注册的场景。 系统能力 SystemCapability.ArkUI.ArkUI.Full 参数 参数名参数类型必填参数描述typestring是取消订阅扩展Ability发生同步注册回调。callback(proxy: UIExtensionProxy) void否为空代表取消订阅所有扩展Ability同步注册后触发回调 非空代表取消订阅同步对应回调。 示例 本示例仅展示组件使用的方法和扩展的Ability实际运行需在设备中安装bundleName为com.example.uiextensionproviderabilityName为UIExtensionProvider的Ability扩展。 // 组件使用示例 Entry Component struct Second {State message1: string Hello World 1State message2: string Hello World 2State message3: string Hello World 3State visible: Visibility Visibility.HiddenState wid: number 300State hei: number 300private proxy: UIExtensionProxy undefinedbuild() {Row() {Column() {Text(this.message1).fontSize(30)Text(this.message2).fontSize(30)Text(this.message3).fontSize(30)UIExtensionComponent({bundleName : com.example.newdemo,abilityName: UIExtensionProvider,parameters: {ability.want.params.uiExtensionType: dialog}}).width(this.wid).height(this.hei).border({width: 5, color: Color.Blue}).onResult((data){this.message1 JSON.stringify(data[want][bundleName])}).onRelease((code){this.message2 release code : code}).onReceive((data) {console.info(Lee onReceive, for test)this.message3 JSON.stringify(data[data])}).onRemoteReady((proxy) {console.info(onRemoteReady, for test)this.proxy proxythis.proxy.on(syncReceiverRegister, syncRegisterCallback1);// this.proxy.on(syncReceiverRegister, syncRegisterCallback2);// this.proxy.off(syncReceiverRegister);// this.proxy.off(syncReceiverRegister, (proxy) {// console.info(off invoke for test, type is syncReceiverRegister);// });this.proxy.on(asyncReceiverRegister, (proxy1) {console.info(on invoke for test, type is asyncReceiverRegister);});//// this.proxy.off(asyncReceiverRegister);})Button(点击向UIExtensionAbility发送数据).onClick(() {if (this.proxy ! undefined) {this.proxy.send({data: 你好1})try {let re this.proxy.sendSync({data: 你好2})console.info(for test, re JSON.stringify(re));} catch (err) {console.error(sendSync failed for test. errCode${err.code}, msg${err.message});}}})}.width(100%)}.height(100%)} }function syncRegisterCallback1(proxy: UIExtensionProxy) {console.info(on invoke for test, syncRegisterCallback1, type is syncReceiverRegister); }function syncRegisterCallback2(proxy: UIExtensionProxy) {console.info(on invoke for test, syncRegisterCallback2, type is syncReceiverRegister); } // 扩展入口文件UIExtensionProvider.ts import UIExtensionAbility from ohos.app.ability.UIExtensionAbility import UIExtensionContentSession from ohos.app.ability.UIExtensionContentSession import Want from ohos.app.ability.Want; const TAG: string [UIExtAbility] export default class UIExtAbility extends UIExtensionAbility {onCreate() {console.log(TAG, UIExtAbility onCreate)}onForeground() {console.log(TAG, UIExtAbility onForeground)}onBackground() {console.log(TAG, UIExtAbility onBackground)}onDestroy() {console.log(TAG, UIExtAbility onDestroy)}onSessionCreate(want: Want, session: UIExtensionContentSession) {console.log(TAG, UIExtAbility onSessionCreate, want: ${JSON.stringify(want)})let param: Recordstring, UIExtensionContentSession {session: session};let storage: LocalStorage new LocalStorage(param);session.loadContent(pages/extension, storage);}onSessionDestroy(session: UIExtensionContentSession) {console.log(TAG, UIExtAbility onSessionDestroy)} } // 扩展Ability入口页面文件extension.ets import UIExtensionContentSession from ohos.app.ability.UIExtensionContentSession; import router from ohos.router;let storage LocalStorage.getShared()Entry(storage) Component struct Extension {State message: string UIExtensionAbilityprivate session: UIExtensionContentSession storage.getUIExtensionContentSession(session);onPageShow() {if (this.session ! undefined) {this.session.setReceiveDataCallback((data) {this.message JSON.stringify(data[data])console.info(invoke for test, handle callback set by setReceiveDataCallback successfully);})this.session.setReceiveDataForResultCallback(func1)}}build() {Row() {Column() {Text(this.message).fontSize(20).fontWeight(FontWeight.Bold)Button(点击向Component发送数据).onClick((){if (this.session ! undefined) {this.session.sendData({data: 543321})console.info(send 543321, for test)}})Button(terminate).onClick(() {if (this.session ! undefined) {this.session.terminateSelf();}storage.clear()})Button(terminate with result).onClick((){if (this.session ! undefined) {this.session.terminateSelfWithResult({resultCode: 0,want: {bundleName: myBundleName,parameters: { result: 123456 }}})}storage.clear()})Button(点击跳转).onClick(() {router.pushUrl({url: pages/hello})})}}.height(100%)} } function func1(data: { [key: string]: Object; }): { [key: string]: Object; } {this.message JSON.stringify(data[data])console.info(invoke for test, handle callback set by setReceiveDataForResultCallback successfully);return data; } 最后有很多小伙伴不知道学习哪些鸿蒙开发技术不知道需要重点掌握哪些鸿蒙应用开发知识点而且学习时频繁踩坑最终浪费大量时间。所以有一份实用的鸿蒙HarmonyOS NEXT资料用来跟着学习是非常有必要的。  这份鸿蒙HarmonyOS NEXT资料包含了鸿蒙开发必掌握的核心知识要点内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等鸿蒙HarmonyOS NEXT技术知识点。 希望这一份鸿蒙学习资料能够给大家带来帮助有需要的小伙伴自行领取限时开源先到先得~无套路领取 获取这份完整版高清学习路线请点击→纯血版全套鸿蒙HarmonyOS学习资料 鸿蒙HarmonyOS NEXT最新学习路线 HarmonOS基础技能 HarmonOS就业必备技能  HarmonOS多媒体技术 鸿蒙NaPi组件进阶 HarmonOS高级技能 初识HarmonOS内核 实战就业级设备开发 有了路线图怎么能没有学习资料呢小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙OpenHarmony 学习手册共计1236页与鸿蒙OpenHarmony 开发入门教学视频内容包含ArkTS、ArkUI、Web开发、应用模型、资源分类…等知识点。 获取以上完整版高清学习路线请点击→纯血版全套鸿蒙HarmonyOS学习资料 《鸿蒙 (OpenHarmony)开发入门教学视频》 《鸿蒙生态应用开发V2.0白皮书》 《鸿蒙 (OpenHarmony)开发基础到实战手册》 OpenHarmony北向、南向开发环境搭建 《鸿蒙开发基础》 ArkTS语言安装DevEco Studio运用你的第一个ArkTS应用ArkUI声明式UI开发.…… 《鸿蒙开发进阶》 Stage模型入门网络管理数据管理电话服务分布式应用开发通知与窗口管理多媒体技术安全技能任务管理WebGL国际化开发应用测试DFX面向未来设计鸿蒙系统移植和裁剪定制…… 《鸿蒙进阶实战》 ArkTS实践UIAbility应用网络案例…… 获取以上完整鸿蒙HarmonyOS学习资料请点击→纯血版全套鸿蒙HarmonyOS学习资料 总结 总的来说华为鸿蒙不再兼容安卓对中年程序员来说是一个挑战也是一个机会。只有积极应对变化不断学习和提升自己他们才能在这个变革的时代中立于不败之地。
http://www.hkea.cn/news/14583981/

相关文章:

  • 深圳商业网站建设哪家好用源码做网站步骤
  • 政协网站 是政协信息化建设枣庄做网站的公司
  • 网站开发长期合作网站方案策划书
  • 网站百度搜索情况和反链接优化建议做网站工资多少钱
  • 承德微网站开发企业建设网站公司哪家好
  • 小游戏网站开发多用户wordpress主题
  • dede网站经常被挂马 怎么办成都有哪些做网站的
  • 站长网站素材做网站好的网络公司
  • 三明网站建设tudouly备案 填写网站信息
  • 网站购买域名之后再怎么做网站有什么优势
  • 网站建网站建设网页正规软件开发培训学校
  • 网站海外seoapp软件开发技术pdf百度云
  • 长沙网站建设索王道下拉魔方 网站建设 有限公司
  • 上海网站建设lv cn青岛市住房和城乡建设局网站查询
  • 企业网站建设代理加盟wordpress 3.8.2
  • 网站建设合同2018网站开发技术考试题
  • 海盐县建设门户网站网站模板织梦
  • 怎么建设网站运城给别人做金融网站 犯法吗
  • 企业网站模板下载需谨慎建设网站所有步骤
  • 做一个类似京东的网站网站编辑没有经验可以做吗
  • 贵阳做网站的公司有哪些国内免费制作网页的网站
  • 还有那个网站可以做兼职呢7黄页网站建设
  • 餐饮网站源码wptamed wordpress仪表盘汉化
  • 优秀行业网站找做网站的公司好
  • 企业网站的搜索引擎推广与优化微信公众号平台手机端
  • dw做网站导航条想制作自己的网站吗
  • 简洁的网站设计网站建设保密
  • 石家庄行业网站创造一个平台要多少钱
  • 济南网站建设多少费用网站手机app开发
  • 广告设计与制作专业就业工资台州百度关键词优化