В настоящее время я нахожусь в проекте, для которого мы используем React Navigation 5 с собственным навигатором стека из-за его повышенной производительности. Нам нужно добавить панель поиска в заголовок, потому что клиенту не понравится, что он где-то еще. Есть ли способ сделать пользовательский заголовок? использование options = {{headerShown: false}} не является опцией, поскольку в навигаторе встроенного стека у нас есть навигатор нижнего стека, а внутри навигатора нижней вкладки - навигатор верхнего стека с экранами внутри него. , Поэтому использование headerShown: false и настраиваемый заголовок внутри экранов будет отображать его только под верхними вкладками, что недопустимо. Есть идеи как это сделать? использует навигатор общего стека с настраиваемым элементом реагирования в качестве заголовка единственное решение?

Очень ценю любые идеи о том, как решить эту проблему.

0
Dieguinho 18 Фев 2020 в 16:38

3 ответа

Лучший ответ

Решил его, используя опцию headerRight и передав ему полный пользовательский компонент заголовка.

0
Dieguinho 20 Фев 2020 в 13:37

Взгляните на https://reactnavigation.org/docs/en/stack-navigator. html Вы можете передать header в опору options и использовать собственный заголовок.

0
Chris Snape 19 Фев 2020 в 09:19

Передать navigationOptions в ваш компонент

export default class Test extends Component{

    static navigationOptions = ({ navigation }) => ({
        headerTitle: "Test",
        headerStyle: {
          backgroundColor: #f1f1f1,
          elevation: 0
        },
        headerTintColor: "#000",
      });

    render(){
        return(<View><Text>Test App</Text></View>);
    }
}
0
Ravi Singh 19 Фев 2020 в 11:36