Панель действий Nativescript Vue, дублированная Android

Я использую Nativescript-Vue и не могу понять, как удалить ActionBar, который по умолчанию отображается в Android с именем приложения (в iOS он не отображается). Любые идеи?

Если я добавлю новый <ActionBar /> в шаблон, он будет отображаться под панелью действий «по умолчанию», от которой я не могу избавиться.

Если я использую actionBarHidden = "true" в моем теге <Page />, я не могу добавить свой пользовательский ActionBar.

Проект был построен с использованием vue init nativescript-vue/vue-cli-template <project-name>, он имеет в основном ту же конфигурацию (manifest.xml и другие App_Resources), что и в этом примере: https://github.com/tralves/groceries-ns-vue/tree/master/app/App_Resources

Я использую несколько таких фреймов, возможно, это как-то связано с проблемой:

<Page>
 <TabView androidTabsPosition = "bottom" iosIconRenderingMode = "alwaysOriginal" @selectedIndexChange = "showComponent">
  <TabViewItem title = "Servicios" iconSource = "res://ic_person_outline_18pt">
    <Frame id = "services">
      <Categories />
    </Frame>
  </TabViewItem>

  <TabViewItem title = "Citas" iconSource = "res://ic_date_range_18pt">
    <Frame id = "bookings">
      <Bookings v-if = "show_bookings" />
    </Frame>
  </TabViewItem>

  <TabViewItem title = "Carrito" iconSource = "res://ic_shopping_basket_18pt">
    <Frame id = "cart">
      <Cart v-if = "show_cart" />
    </Frame>
  </TabViewItem>
 </TabView>
</Page>

В каждом компоненте (категории, бронирования, корзина) я визуализирую конкретную панель действий.

Это изображение показывает проблему, имя приложения - Ameiz:

Проблема с Double ActionBar - Android

Спасибо.-

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

Manoj 01.12.2018 20:27

Спасибо @Manoj, я попытался напрямую установить заголовок, но ActionBar по умолчанию с именем приложения остался. Возможно, это как-то связано с несколькими кадрами, хотя я не знаю, в чем может быть проблема, поскольку я визуализирую содержимое кадра только после того, как пользователь щелкает TabViewItem. Я отредактирую свой вопрос с более подробной информацией. Спасибо!

Hans 01.12.2018 21:34
1
2
665
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

У каждой страницы будет своя панель действий. Поскольку страница является родительской для TabView, и каждая вкладка имеет свой собственный фрейм и страницу, вы получаете там 2 ActionBar.

Установите actionBarHidden = "true" на родительскую страницу TabView. Если вы все еще сталкиваетесь с проблемами, поделитесь, пожалуйста, примером игровой площадки, где проблема может быть воспроизведена.

Спасибо за это! Я поместил это в свой компонент маршрутизации вкладок, вставив Page в свой конструктор!

Petey 15.08.2019 20:26

Привет, @Petey, у меня аналогичная проблема, хотя я не использую несколько кадров. Я объявил свой ActionBar в моем собственном компоненте, а затем включил его в содержимое RadSideDrawer. К сожалению, я получаю дублированные ActionBar, и если я добавлю actionBarHidden = "true", он скроет объявленный мной пользовательский ActionBar. Не могли бы вы объяснить, как вы добились своего? Я все еще новичок, когда дело касается NativeScript и Vue.

Jason Hodkinson 18.02.2020 08:34

Другие вопросы по теме