Как исключить ActionBar при использовании тега Frame в TabView? - PullRequest
0 голосов
/ 26 апреля 2019

Моя проблема

Я использую простой TabView на определенной странице.

<Page class="page" navigatingTo="onNavigatingTo" xmlns="http://schemas.nativescript.org/tns.xsd">

    <ActionBar class="action-bar">
        <!-- 
        Use the NavigationButton as a side-drawer button in Android
        because ActionItems are shown on the right side of the ActionBar
        -->
        <NavigationButton ios:visibility="collapsed" icon="res://menu" tap="onDrawerButtonTap"></NavigationButton>
        <!-- 
        Use the ActionItem for IOS with position set to left. Using the
        NavigationButton as a side-drawer button in iOS is not possible,
        because its function is to always navigate back in the application.
        -->
        <ActionItem icon="res://navigation/menu" android:visibility="collapsed"
            tap="onDrawerButtonTap" ios.position="left">
        </ActionItem>
        <Label class="action-bar-title" text="Browse"></Label>
    </ActionBar>

    <TabView androidTabsPosition="bottom">
        <TabViewItem title="first tab">
            <Frame defaultPage="home/home-page"></Frame>
        </TabViewItem>
        <TabViewItem title="2222 tab">
            <Frame defaultPage="search/search-page"></Frame>
        </TabViewItem>
    </TabView>

</Page>

, как вы видите, когда мы приходим на эту страницу, нам представляются нижние вкладки.Но проблема возникает, когда мы нажимаем на одну из вкладок.

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

Снимок экрана ошибки

Title Bar Erroneously Imported

Идеальное решение

Я хотел бы иметь возможность импортировать страницу в моем TabView с помощью тега Frame, но исключить ActionBarпри этом.

Когда мы переходим на страницу напрямую, Я ХОЧУ, чтобы отобразилась панель действий.

Возможно ли это?Если да, не могли бы вы указать мне правильное направление?Вот мой код с треском проваливается ...

Онлайн-демонстрация на игровой площадке

Спасибо за внимание, Джон

1 Ответ

1 голос
/ 26 апреля 2019

Вы можете установить для свойства actionBarHidden значение false на Page, для которого не требуется отображать панель действий.

Если вы не хотите, чтобы панель действий отображалась на всей Frameзатем установите actionBarVisibility на never на самом Frame.

    <TabView>
        <TabViewItem title="first tab">
            <Frame defaultPage="home/home-page" actionBarVisibility="never"></Frame>
        </TabViewItem>
        <TabViewItem title="2222 tab">
            <Frame defaultPage="search/search-page" actionBarVisibility="never"></Frame>
        </TabViewItem>
    </TabView>

Обновленная игровая площадка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...