判断题
142【判断题】@Builder 如果传入的参数是两个或两个以上,不会触发动态渲染 UI。
A
正确
B
错误
答案解析
正确答案:B
解析:
该题目考查的是对 @Builder 注解在特定开发框架中行为的理解,尤其是在涉及参数数量与动态渲染 UI 之间关系方面的知识点。
首先明确核心概念:@Builder 是 Jetpack Compose 中的一个注解,用于标记可组合函数(Composable Function),表示该函数是一个构建器,能够根据输入参数的变化来决定是否需要重新执行(即重组,Recomposition)。Compose 框架通过智能的重组机制实现动态 UI 渲染,只有当函数的参数发生变化时,才会触发该函数的重新执行,从而更新 UI。
关键知识点在于:Jetpack Compose 的重组机制并不取决于传入参数的数量,而是取决于参数是否被标记为状态(State)或是否在运行过程中发生改变。只要传入的参数在后续执行中发生了变化,无论是一个、两个还是多个参数,都会触发该 @Composable 函数的重组,进而可能引起 UI 的动态更新。
题干声称:“如果传入的参数是两个或两个以上,不会触发动态渲染 UI”,这一说法是错误的。参数数量与是否触发动态渲染无直接关系。实际上,即使有两个或更多参数,只要其中任意一个参数发生变化,并且该函数处于活跃的组合树中,Compose 就会根据差异检测机制判断是否需要重组,从而更新 UI。
因此,正确答案应为 B:错误。
原题给出的答案 A(正确)是不正确的。
结论:本题题干表述错误,正确选项应为 B。
相关知识点:
@Builder 多参不触发 UI 渲染
题目纠错
2025年HarmonyOS应用开发者基础认证题库
相关题目
单选题
220【单选题】小张在开发 HarmonyOS 应用过程中,希望在用户点击返回按钮时保存数据,此时他需要在哪个生命周期函数中编写业务逻辑
单选题
219【单选题】下面哪个装饰器用于校验构造传参
单选题
218【单选题】小张在开发 HarmonyOS 应用过程中,希望在组件显示前完成数据初始化的相关业务,此时需要在哪个生命周期函数中编写业务逻辑
单选题
217【单选题】ArkUI 中,若要使组件的边框样式为虚线,应该设置 borderStyle 的值为
单选题
216【单选题】以下哪个代码片段正确地监听了 TextArea 组件的文本变化事件,并打印了变化后的文本
单选题
215【单选题】TabContent 组件的高度由什么决定
单选题
214【单选题】如果希望在其他文件中引用当前文件中定义的自定义组件,需要在该自定义组件前添加哪个关键字
单选题
213【单选题】以下哪个属性可以用来控制组件是否可以接受焦点
单选题
212【单选题】以下关于 Button 组件的描述中,错误的是
单选题
211【单选题】复用组件的通用属性和通用事件时可以使用下面哪个装饰器
