Как запретить реагирующую навигацию для анимации высоты панели приложений при смене видов? - PullRequest
1 голос
/ 20 января 2020

Я вижу Android панель приложений, анимирующую height при смене страниц.

Это мое AppBar.js:

import React from 'react';
import { Appbar as AppBarDefault } from 'react-native-paper';
import Logo from '../Logo';

const {
  Header,
  BackAction,
  Content,
  Action,
} = AppBarDefault;

export default class AppBar extends React.Component {
  render() {
    const { nav, pages, previous } = this.props;
    return (
      <Header statusBarHeight={Constants.statusBarHeight}>
        {previous ? (
          <BackAction onPress={() => nav.goBack()} />
        ) : (
          <Action
            icon="menu"
            onPress={nav.openDrawer}
          />
        )}
        <Content
          title={<Logo />}
          style={{ alignItems: 'center' }}
        />
        <Action icon="account-supervisor-circle" onPress={() => nav.navigate(pages.list)} />
      </Header>
    );
  }
}

Это поведение по умолчанию и можно ли это предотвратить?

Я также пытался использовать:

    <Stack.Navigator {...getStackConfig(routes)} screenOptions={screenOptions}>
      {routes.map((route) => (
        <Stack.Screen
          key={route.path}
          name={route.page}
          component={route.component}
          options={{
            title: route.message,
            headerStyleInterpolator: HeaderStyleInterpolators.forFade,
            headerStyle: {
              height: Constants.statusBarHeight + REACT_PAPER_APPBAR_HEIGHT
            },
            ...TransitionPresets.SlideFromRightIOS,
          }}
        />
      ))}
    </Stack.Navigator>

Это включает слайд справа (стиль ios), я надеюсь, что он может решить анимацию AppBar, но у меня все еще есть анимация двух AppBar, хотя я не хочу анимацию на AppBar.

Есть ли способ отключить всю анимацию AppBar на android?

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