我有用 Java 编写的自定义控件。为了简单起见,我们假设它看起来像这样:
public class HelloworldControl extends UIComponentBase {
@Override
public void decode(FacesContext context) {
String cid = this.getClientId(context);
...
super.decode(context);
}
@Override
public void encodeBegin(FacesContext context) throws IOException {
ResponseWriter writer = context.getResponseWriter();
writer.writeText("Hello world!", this);
// I want a view!!
}
@Override
public void encodeEnd(FacesContext context) throws IOException {
ResponseWriter writer = context.getResponseWriter();
...
}
public void restoreState(FacesContext context, Object state) {
Object values[] = (Object[]) state;
...
super.restoreState(context, values[0]);
}
public Object saveState(FacesContext context) {
Object values[] = ...
}
}
我想以编程方式添加子控件。例如,我想要一个子视图控件在 Hellow 世界文本下呈现一个视图。
我怎样才能做到这一点?动态构建控件的标准程序是什么?
简而言之 - 我想以编程方式构建标准组件的层次结构,并且我想将它附加到我的控件上。