2

UIComponent 类中的方法isInView()isRendered()有什么区别?

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

4

1 回答 1

4

只有在动态创建/操作 JSF 组件树时才有意义。它指示所讨论的组件实例是否是 JSF 组件树(“视图”)的成员。

例如,假设someParentComponent视图中已经存在(作为 的子级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(并且在视图中),则生成 HTML,否则如果false,则不生成 HTML)。

于 2013-06-06T14:25:19.420 回答