在文档中讲解了可以在父screen中通过properties传递参数给fragment,参见:https://doc.cuba-platform.cn/manual-7.1-chs/using_screen_fragments.html#using_screen_fragment_data
但没有将详细解释fragment如何接收参数。
需要在 Fragment 内部实现相应的 setter 方法。
比如如果需要使用 <property name="strParam" value="some value"/>
那么在 fragment 内部需要有:public setStrParam(String input)
方法。
注意看文档的注释:
需要在 AfterInit 事件中获取,可以尝试将下面代码放入你的 fragment 中试试。
@Subscribe(target = Target.PARENT_CONTROLLER)
public void onAfterInit(Screen.AfterInitEvent event) {
System.out.println("after init:"+strParam);
}
OK,搞定了。 还是要多看看生命周期