У меня есть TabNavigator, в котором есть несколько детей. Поток приложения позволяет пользователю покинуть экран с помощью этого TabNavigator, а затем вернуться. Когда это произойдет, метод, вызываемый при показе родительских наборов холста, выбралChild на первую вкладку. При фактическом тестировании TabNavigator возвращает текст на первой вкладке, но вкладка, которая подсвечена, представляет собой вкладку, на которой пользователь находился только перед отъездом.Flex TabNavigator: Когда экран оставлен и возвращен, selectedChild установлен, но панель вкладок подсвечивает неправильную вкладку
Вот некоторые псевдо-код, который выглядит примерно так, как у меня есть:
<mx:Canvas show="init()">
<mx:Script>
<![CDATA[
private function init():void {
menutabs.selectedChild = tab1;
}
]]>
</mx:Script>
<mx:TabNavigator id="menutabs">
<mx:VBox id="tab1" label="Tab 1"><mx:Label text="First Tab Text" /></mx:VBox>
<mx:VBox id="tab2" label="Tab 2"><mx:Label text="Second Tab Text" /></mx:VBox>
<mx:VBox id="tab3" label="Tab 3"><mx:Label text="Third Tab Text" /></mx:VBox>
</mx:TabNavigator>
</mx:Canvas>
Итак, что я испытываю, например, собирается на другой холст с приложением, побывав на вкладке 2, затем возвращаясь к этому холсту, чтобы увидеть текст «Текст первой вкладки», но выделенная вкладка вверху - «Вкладка 2.» Я пробовал несколько вариантов внутри метода init() invalidateDisplayList, validateNow и т. Д. Без изменения результата.
Любые идеи приветствуются.
К сожалению, когда я заменил menutabs.selectedChild = tab1; с menutabs.selectedIndex = 0; результат был тот же. – cobaltduck