Установить заголовок в ActionBar - Экран с группами вкладок - Титановый сплав

Я использую Titanium версии 3.1.3 и фреймворк из сплава. Я реализовал панель действий в своем приложении; но на экране с группами вкладок заголовок отсутствует на панели действий. В нем отображается только значок. Отсюда - https://jira.appcelerator.org/browse/TIMOB-11645, Я вижу, что это исправлено в версии SDK: 3.1.0.v20130320190115. Но все равно не могу понять почему.

Я попытался установить заголовок панели действий с помощью кода, подобного этому

var actionBar;
if (Ti.Platform.osname === "android") {
        if (! $.tab.activity) {
            Ti.API.error("Can't access action bar on a lightweight window.");
        } else {
            actionBar = $.tab.getActivity().actionBar;
            if (actionBar) {
                alert("true");
                //actionBar.title = "TITLE";
                actionBar.setTitle("TITLE");
            }
        }
    }

Пожалуйста помоги. Заранее спасибо!


person Kris    schedule 25.02.2014    source источник


Ответы (1)


Чтобы получить доступ к некоторым методам и свойствам ActionBar, например к заголовку, необходимо запустить код после открытия группы вкладок.

На ваш взгляд, вы можете добавить прослушиватель событий следующим образом:

<TabGroup onOpen="doOpen">
    ....
</TabGroup>

Затем в вашем контроллере поместите свой код в обратный вызов:

function doOpen(){
    var actionBar;
    if (Ti.Platform.osname === "android") {
        if (! $.tab.activity) {
           Ti.API.error("Can't access action bar on a lightweight window.");
        } else {
            actionBar = $.tab.getActivity().actionBar;
            if (actionBar) {
                alert("true");
                //actionBar.title = "TITLE";
                actionBar.setTitle("TITLE");
            }
        }
    }
}

Я протестировал ваш код в обратном вызове открытого события с помощью SDK 3.2.1, и он работал нормально.

Вот еще один пример изменения заголовка панели действий.

person Adam Paxton    schedule 27.02.2014