【每日学点HarmonyOS Next知识】页面引用问题、Json三方库、路由表使用、下拉刷新问题、视频播放错误

server/2025/3/17 17:18:31/
1、HarmonyOS 全屏的自定义组件被其他页面引用后导致其他页面按钮功能无法使用问题?

参考代码:

//1.index.ets
@Entry
@Component
struct First {@State visible: Visibility = Visibility.Nonebuild() {// 使用stack可以实现假的dialog覆盖原页面上面Stack() {Column() {Button('页面底层按钮').onClick(() => {// showToast('点击了底层按钮')console.log('点击了底层按钮', this.visible)}).backgroundColor(Color.Blue).margin({ top: 200 })}.width('100%').height('100%').backgroundColor(Color.Red)Component1({ visible: $visible })}.width('100%').height('100%')}
}
//2.Component1.ets
@Component
export struct Component1 {@Link visible: Visibility@State btnvisible: Visibility =  Visibility.Visiblebuild() {Stack() {Row() {// 初始页面Column() {// 触发dialog的地方Flex({direction:FlexDirection.Row,justifyContent:FlexAlign.End}){Button('click').type(ButtonType.Normal).onClick(() => {//用于检测点击事件是否透传到原来的页面,我测了一下是没有透传的,符合dialog规范console.log("hit me!")if (this.visible == Visibility.Visible) {this.visible = Visibility.Nonethis.btnvisible = Visibility.Visible} else {this.visible = Visibility.Visiblethis.btnvisible = Visibility.None}}).fontColor(Color.White).width(80).height(80)}}.backgroundColor(Color.Green).alignItems(HorizontalAlign.End).width(80).visibility(this.btnvisible)}// .height(50).backgroundColor(Color.Yellow)//这里开始是构造弹窗效果主要需要修改的地方,首先是加了一个半透明灰色的蒙层效果Column() {Text('我是弹框内容页面').fontColor(Color.Green)}.width('100%').height('100%').onClick(() => {if (this.visible == Visibility.Visible) {this.visible = Visibility.Nonethis.btnvisible = Visibility.Visible} else {this.visible = Visibility.Visiblethis.btnvisible = Visibility.None}})// 透明度可以自己调节一下.opacity(0.7).backgroundColor(Color.Orange).visibility(this.visible)}}
}
jsonjson_96">2、HarmonyOS 如何解析json内容?有没有更多的json类库?

有自带的json类库吗?只看到一个JSON.parse、JSON.stringify,但是又怎么从json object里读取属性呢?

关于JSON解析与生成的API方法,参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-json-V5
JSON三方库相关链接:https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/rapidjson

3、HarmonyOS 系统路由表跟自定义路由如何混用,是否可以提供一个demo?

系统路由表跟自定义路由如何混用

关于自定义路由表和系统路由表混用暂无Demo;具体用法参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-set-navigation-routing-V5

参考该示例代码链接中的 Navigation系统路由:https://developer.huawei.com/consumer/cn/samples/

4、HarmonyOS 下拉刷新后的loading的icon显示在了页面上?

loading的icon在刷新之后会显示在页面的原因有两个:

  1. Refresh组件的顶部有一部分留白(头像组件空出来的那一行),导致了loading的icon能够显示出来;
  2. this.RefreshText 的赋值有问题:
.onRefreshing(async () => {await this.onInitializethis.isRefreshing = falsethis.RefreshText = ''console.log('onRefreshing test')
})

这里无法将 this.RefreshText 赋值为 ‘’

.onRefreshing(() => {setTimeout(() => {this.isRefreshing = falsethis.RefreshText = ''}, 2000)console.log('onRefreshing test')
})

这里是可以将 this.RefreshText 赋值为 ‘’ 的,在数据请求之后 this.RefreshText 能够赋值成功(不为 ‘加载中…’ ),loading的icon是会自动隐藏的

5、HarmonyOS 视频播放偶现 5400106 错误码?

5400106:不支持的规格错误信息Unsupport format.错误描述:不支持的规格。可能原因:不支持的文件或者格式。处理步骤:当前使用的格式规格不支持,用户需要切换为支持的规格。这部分报错是文件的格式有问题排查一下这个videouri


http://www.ppmy.cn/server/175740.html

相关文章

摄像头模块ISP处理流程

摄像头模块的ISP(图像信号处理器)处理流程是对图像传感器输出的原始信号进行系统性优化的过程,主要分为以下关键步骤及对应功能模块: 一、原始信号输入与预处理 ‌传感器信号捕获‌ CMOS/CCD传感器将光信号转换为模拟电信号&…

【QA】建造者模式在Qt有哪些应用

#设计模式 #Qt 一、QDomDocument(XML 文档构建) 模式角色: Builder:QDomDocument 本身Product:XML 文档对象Director:用户代码通过 QDomDocument 逐步构建文档结构 示例代码: QDomDocument…

DeepSeek-prompt指令-当DeepSeek答非所问,应该如何准确的表达我们的诉求?

当DeepSeek答非所问,应该如何准确的表达我们的诉求?不同使用场景如何向DeepSeek发问?是否有指令公式? 目录 1、 扮演专家型指令2、 知识蒸馏型指令3、 颗粒度调节型指令4、 时间轴推演型指令5、 极端测试型6、 逆向思维型指令7、…

(C语言)写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和(递归函数)

#include <stdio.h> int DigitSum(int n){if(n<10){return n;}return (n%10)DigitSum(n/10); } int main(){printf("请输入一个非负整数:\n");int a0;while(1){if(scanf("%d",&a)!1 || a<0){printf("输入不合法请重新输入非负整数&am…

深入分析 Shell 中 IFS、数组赋值与输出行为

在 Shell 脚本中&#xff0c;IFS&#xff08;Internal Field Separator&#xff09;是一个至关重要的环境变量&#xff0c;它用于定义字符串或数组在分隔时使用的字符。默认情况下&#xff0c;IFS 包括空格、制表符和换行符&#xff0c;Shell 会使用这些字符来分隔输入或命令输…

人工智能之数学基础:线性变换之吉文斯变换

本文重点 吉文斯变换(Givens transformation)亦称平面旋转变换,是数值代数的基本工具之一,它是一种正交变换。 平面旋转矩阵 在前面的线性变换的课程中,我们学习过矩阵其实是一个函数,其中我们介绍了一个正交矩阵,它可以完成向量的旋转,平面旋转矩阵是在乘以一个向量…

Linux 上常见的解压缩命令

文章目录 Linux 上常见的解压缩命令常见格式的解压方式1. .tar 文件&#xff08;只经过 tar 打包&#xff09;2. .tar.gz 或 .tgz 文件&#xff08;tar gzip&#xff09;3. .tar.bz2 文件&#xff08;tar bzip2&#xff09;4. .tar.xz 文件&#xff08;tar xz&#xff09;5.…

【004】deepseek本地化部署后,python的调用方式_#py

python调用本地deepseek 1 本地化部署deepseek2 python调用方式 1 本地化部署deepseek 已经有很多大佬们说了不少部署本地化部署deepseek的工作了&#xff0c;我就不过多重复了。 先安装Ollama软件&#xff0c;再通过Ollama获取deepseek的模型文件&#xff0c;大家根据电脑的配…