HarmonyOS @Builder函数接收的状态变量未引起内部ui变化
ChangePinPage界面唤起了自定义键盘,在自定义键盘的按钮组件中修改了currentKeyboardType键盘类型来切换中英文键盘,但是CustomKeyboard.ets中Text(${$$.currentKeyboardType})的值并未变化。
//xxxModel.ets
export class Tmp {
inputController: TextInputController;
currentKeyboardType: number;
constructor(inputController: TextInputController, currentKeyboardType: number) {
this.inputController = inputController;
this.currentKeyboardType = currentKeyboardType
}
}
# ChangePinPage.ets:
@Provide currentKeyboardType: number = Const.KEYBOARD_TYPE_NUMBER;
...
TextInput()
.customKeyboard(KeyBoardWindow(new Tmp(this.oldPinController, this.currentKeyboardType)))
# CustomKeyboard.ets:
@Builder
export function KeyBoardWindow($$: Tmp) {
Column() {
Row() {
Image($r("app.media.ic_keyboard_down"))// 标题行的”收起“图标
.onClick(() => {
$$.inputController.stopEditing()
})
Text(`${$$.currentKeyboardType}`)
}
}
// xxxChild.ets ...
@Consume currentKeyboardType: number;
...
this.currentKeyboardType = 2;
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
ArkTS中如何监听状态变量的变化?
1005浏览 • 1回复 待解决
自定义组件中,批量更新多个状态变量 vs 批量更新多个非状态变量后更新一个UI无关状态变量强制更新UI
1731浏览 • 1回复 待解决
#鸿蒙学习大百科#状态变量的变化何时会触发UI刷新?
248浏览 • 1回复 待解决
状态变量和常规变量有什么区别?
463浏览 • 2回复 待解决
HarmonyOS 状态变量不刷新问题
494浏览 • 1回复 待解决
HarmonyOS 每个页面相同的状态变量如何封装?
363浏览 • 1回复 待解决
如何将界面上的状态变量传给服务层,在服务层修改状态变量对象的属性刷新页面
648浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用@Watch装饰器监听状态变量变化?
137浏览 • 1回复 待解决
#鸿蒙通关秘籍#怎样在ArkTS中使用@Watch装饰器监听状态变量的变化?
211浏览 • 1回复 待解决
关于状态变量@state必须知道的事
1153浏览 • 1回复 待解决
@Provide的状态变量,是否可以观察多层嵌套的属性?
864浏览 • 1回复 待解决
基于滑动监听和状态变量实现滑动时取消按压态
744浏览 • 1回复 待解决
HarmonyOS @Watch可以观察到@Consume装饰的状态变量更改吗
23浏览 • 1回复 待解决
HarmonyOS Navigtion组件,两个NavDestination之间如何同步状态变量
392浏览 • 1回复 待解决
backgroud()方法使用@State修饰的状态变量值更新后未能触发不同的@builder方法刷新
2230浏览 • 1回复 待解决
#鸿蒙学习大百科#在ArkUI中,什么是状态变量?
232浏览 • 1回复 待解决
HarmonyOS @Require 修饰的无状态变量必须要给初始默认值?
172浏览 • 1回复 待解决
#鸿蒙学习大百科#如何避免不必要的状态变量的使用?
226浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙NEXT组件中通过@Styles装饰器访问状态变量
145浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS Next中灵活运用状态变量和普通变量来构建界面?
141浏览 • 1回复 待解决
#鸿蒙学习大百科#状态变量的数量对于app的性能有什么影响?
378浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何避免在鸿蒙开发中使用状态变量强行更新组件?
99浏览 • 1回复 待解决
在自定义组件Page的build方法里改变状态变量会造成什么影响?
464浏览 • 1回复 待解决
HarmonyOS IDE能否监听到State状态变量是在什么地方修改的,类似代码插桩能力
316浏览 • 1回复 待解决
全局@Builder自定义构建函数,采用引用传递,如果放在Navigation()的menus内,状态变量的改变不会触发@Builder方法内的UI刷新
按引用传递参数时,传递的参数可为状态变量,且状态变量的改变会引起@Builder方法内的UI刷新。参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-builder-V5
相关demo