jsf - UIComponent 的 isInView() 和 isRendered() 之间的区别

标签 jsf

这些方法有什么区别isInView()isRendered()来自 UIComponent 类?

通过阅读api中提供的描述我无法弄清楚

最佳答案

只有当您动态创建/操作 JSF 组件树时,它才有意义。它指示相关组件实例是否是 JSF 组件树(“ View ”)的成员。

例如,假设 someParentComponent 已存在于 View 中(作为 UIViewRoot 的子级):

UIComponent newComponent = new SomeComponent();
System.out.println(newComponent.isInView()); // false
someParentComponent.getChildren().add(newComponent);
System.out.println(newComponent.isInView()); // true
someParentComponent.getChildren().remove(newComponent);
System.out.println(newComponent.isInView()); // false

有道理吗?

您必须已经知道 rendered 属性代表什么(在渲染响应阶段,如果 true (并且在 View 中),则生成 HTML,否则如果 false,则不生成 HTML)。

关于jsf - UIComponent 的 isInView() 和 isRendered() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16964534/

相关文章:

java - 已用堆大小持续增加

java - 从 Eclipse 运行 Maven 应用程序的所有 Servlet 上的 ClassNotFoundException

jsf - 目标无法到达,标识符解析为空 JSF 2.2

jsf - 两个 JSF 库提供相同的渲染器

jsf - 如何保持 primefaces rowexpansion 打开?

twitter-bootstrap - 在 JSF 中使用 Primefaces 和 Bootstrap

java - h :graphicImage JSF 的图像路径

java - JSF 2.0 + Spring 3,通过注解获取请求参数

jsf - 使用两个 p :dataTables results in NullpointerException 在页面上排序

java - 如何在 Primefaces 数据表中表示嵌套数据?