我有一个带有3个tab的flex应用程序mxml文件。第一个选项卡有第二个选项卡中的值链接按钮。
假设我在第一个atab有一个链接按钮。第3个选项卡包含值为“basic”,“advanced”的组合框。默认情况下,vaule显示“默认”。
当我在第一个选项卡上选择链接按钮时,“高级”应显示在第三个选项卡上的组合框中。
问题是,当点击第一个标签链接按钮时,第三个标签没有被初始化。所以它没有在组合框中显示“高级”。在链接按钮上选择第二次它显示正常。但不是第一次。
代码:thirdTab.comboBoxId.selectedItem.data = 1;
如果需要更改,请帮助我
答案 0 :(得分:3)
第一次激活选项卡时会初始化选项卡,因此您的代码不起作用。 您可以分离数据模型并将所有UI控件绑定到模型。
答案 1 :(得分:0)
将事件侦听器添加到由TabNavigator的父级处理的第3个选项卡。该事件的处理程序应该能够从第一个选项卡中获取值(可以存储在公共父项中)并将其返回到第3个选项卡,以便可以正确设置ComboBox。从第3个选项卡中侦听creationComplete事件。
答案 2 :(得分:0)
脏的方法是将标签导航器的creationPolicy属性设置为ContainerCreationPolicy.ALL
。这将确保所有选项卡立即初始化。
正确的方法是将模型与视图分开,并使用绑定Yuras表示。