【每日学点鸿蒙知识】组件对象做参数、2D在子线程中使用、Tabs组件联动、Web组件获取焦点、Text加载藏文

1、HarmonyOS 如果将component组件对象当作参数参数传入到一个类中,并在类中修改component中元素是否显示?

目前的规格是组件不能作为参数进行传递的,对于自定义组件可以通过声明参数为builderParam,传递自定义builder。

2、HarmonyOS CanvasRenderingContext2D 支持在 TaskPool中使用吗?

布绘制和UI相关,不适合在子线程中操作,如果 的绘制涉及大比较大的数据计算、处理, 可以在task中处理数据,处理完返回主线程,再进行绘制,并且Canvas并不在官方验证的线程安全的模块之列,所以建议 不要在子线程中直接绘制。

线程安全模块参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/multi-thread-concurrency-overview-V5

3、HarmonyOS bindSheet内部使用Tabs组件,滚动事件无法联动?

布局问题, Tabt和list布局没有叠加在一起,只有按顶部的tabContent下拉才有效,在外面加一层布局包裹就可以了,代码如下

复制代码
@Builder
sheetBuilder() {
  Column() {
    Tabs() {
      ForEach([1, 2], (value: number) => {
        TabContent() {
          this.listBuilder()
        }.tabBar(value.toString())
      })
    }
  }
}
4、HarmonyOS Web组件中加载的网页如何设置默认不获取焦点?

参考以下api:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-webview-V5#ZH-CN_TOPIC_0000001930676933__oninactive

requestFocus(): void 使当前web页面获取焦点。

示例代码如下:

复制代码
// xxx.ets
import { webview } from '@kit.ArkWeb';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct WebComponent {
  controller: webview.WebviewController = new webview.WebviewController();

  build() {
    Column() {
      Button('requestFocus')
        .onClick(() => {
          try {
            this.controller.requestFocus();
          } catch (error) {
            console.error(`ErrorCode: ${(error as BusinessError).code},  Message: ${(error as BusinessError).message}`);
          }
        });
      Web({ src: 'www.example.com', controller: this.controller })
    }
  }
}
5、HarmonyOS Text加载藏文时,显示异常?

使用Text加载超过单行少数民族文字时,设置 .maxLines(1)属性,导致文字前有大段空白,设置.maxLines(1)和.textOverflow({overflow: TextOverflow.Ellipsis}),文字前有大段空白,省略号在前面。

想要文字在控件居中可设置textAlign(TextAlign.Center),解决文字省略号提前导致前面有一大段空白问题可设置wordBreak(WordBreak.BREAK_ALL)

相关推荐
子非鱼a1 小时前
【WEB】multiSQL
前端
lemon_sjdk2 小时前
DOM 节点
java·前端·javascript
nvd112 小时前
深入现代 Web 鉴权架构:网关统一代理 (Forward-Auth) vs 前端持有 JWT 的终极选型与边缘同域实践
前端·架构·状态模式
leoZ2313 小时前
2026-09-09-springboot-cloud-deploy-pitfalls
java·前端·javascript·vue.js·人工智能·spring boot·后端
YWL3 小时前
OpenLayers弹窗Overlay深度实战
前端·vue·openlayers
YWL3 小时前
OpenLayers+ECharts联动:地图点击联动图表,数据可视化大屏方案
前端·信息可视化·vue·echarts·openlayers
芭拉拉小魔仙3 小时前
Vue 2 门诊收费系统中的医保结算流程设计与实践
前端·javascript·vue.js
moonrailgun3 小时前
用 Node.js 复刻 Codex Astra 的终端星光
前端·javascript·算法
海上彼尚4 小时前
Cursor 模型的强度实测排行
前端·人工智能·后端
lqj_本人4 小时前
Flutter 三方库「flutter_ble_peripheral」的鸿蒙化适配指南
flutter·华为·harmonyos