![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Доброго времени суток.
Использую контейнер SuperTabNavigator из гуглкода. Как узнать label у Canvas внутри вкладки? Нужно для того, чтобы не открывать вкладку, если она уже открыта. Вкладки добавляются динамически. Найти пытаюсь так var tabIsOpen:Boolean = false; // узнатю, есть ли вкладка for ( var i:int = 0 ; i < navigator.numChildren ; i++ ) { if( ((navigator.getChildByName("Canvas") as Canvas ).label == "Книга1" ) { tabIsOpen = true; navigator.selectedIndex = i; break; } } // Далее проверяю если tabIsOpen false то строю вкладку В общем окончательно запутался и нужна помощь. |
|
|||||
|
Modus ponens
|
Не знаю что такое SuperTabNavigator, но у обычного есть свойство getTabAt(index) (возвращает ссылку на кнопку - он же лейбл закладки) и можно подписаться на событие IndexChangedEvent которое диспатчится каждый раз, когда пользователь открывает новую закладку, индекс закладки соответственно будет в event.newIndex.
__________________
Hell is the possibility of sanity |
|
|||||
|
wvxvw спасибо за ответ, разобрался и сделал.
Вот кусок когда, вдруг кому-то поможет var tabOpen:Boolean = false; // пробегаемся по списку всех вкладок и проверяем совпадения for ( var i:int = 0 ; i < navigator.numChildren ; i++ ) { if( navigator.getTabAt(i).label == bookData.label ) { navigator.selectedIndex = i; tabOpen = true; break; } } /** * Такой закладки нет. Создаем ее заново и переходим к ней * */ if (tabOpen==false) { navigator.addChild(canvas); navigator.selectedIndex = navigator.numChildren - 1; } |
![]() |
![]() |
Часовой пояс GMT +4, время: 14:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|