Я хотел бы создать панель вкладок, подобную той, что в Твиттере, показанной также в этом вопросе здесь, но я не хочу, чтобы она была вверху или внизу экрана. В моем приложении должен быть заголовок с определенным стилем, некоторой информацией и только после панели вкладок. Я пытаюсь реализовать это с помощью React-Natigation, но кажется, что по умолчанию вы можете создавать панели вкладок только вверху или внизу экрана.
До сих пор я создал пример кода для панели вкладок:
import React from 'react';
import { Text, View } from 'react-native';
import { createMaterialTopTabNavigator, createAppContainer } from 'react-navigation';
class HomeScreen extends React.Component {
render() {
return (
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
<Text>Home!</Text>
</View>
);
}
}
class SettingsScreen extends React.Component {
render() {
return (
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center'}}>
<Text>Settings!</Text>
</View>
);
}
}
const TabNavigator = createMaterialTopTabNavigator({
Home: { screen: HomeScreen },
Settings: { screen: SettingsScreen },
});
export default createAppContainer(TabNavigator);
А вот код экрана, на котором я хочу, чтобы появилась эта панель вкладок:
import React from 'react';
import { Text, View } from 'react-native';
import { TabNavigator } from './../MyTab.js'
class App extends React.Component {
render() {
return (
<View>
<Text style={...some style...}>Title</Text>
<Text>Some text</Text>
<TabNavigator />
</View>
);
}
}
export default App;
Но этот код завершается ошибкой:
Устройство: (101: 380) Нарушение инварианта: недопустимый тип элемента: ожидается строка (для встроенных компонентов) или класс / функция (для составных компонентов), но получено: undefined.
Есть ли у вас предложения по внедрению подобной панели вкладок? Мне даже не нужна настоящая панель навигации, потому что она предназначена для фильтрации некоторых данных, поэтому каждый раз, когда я нажимаю на вкладку, я просто хочу вызвать функцию, как это происходит для элементов, которые имеют функцию onPress, например кнопки .