【发布时间】:2020-10-27 05:33:16
【问题描述】:
我尝试对使用TouchableOpacity 制作的自定义按钮之一进行 onPress 操作。它应该将我导航到另一个屏幕。我做了我在其他屏幕上所做的,但这次它不起作用并且也没有得到任何错误。在 Navigation.js 上,当我手动提供 initialRouteName 时,会出现屏幕,但是当我单击按钮时,什么也没有发生。
主屏幕:
import React from "react";
import { StyleSheet, View, StatusBar, Image, ImageBackground, TouchableOpacity} from "react-native";
const HomeScreen = ({ navigation }) => {
return (
<View>
<TouchableOpacity onPress={() => navigation.navigate('Baslica')}>
<ImageBackground
source={require("../../assets/HomeScreen/baslicaButton.png")}
resizeMode="contain"
style={styles.baslicaButton}
imageStyle={styles.baslicaButton_imageStyle}
>
<Image
source={require("../../assets/HomeScreen/baslicaText.png")}
resizeMode="contain"
style={styles.baslicaText}
></Image>
</ImageBackground>
</TouchableOpacity>
</View>
);
}
export default HomeScreen;
导航JS:
import { createAppContainer } from 'react-navigation';
import { createStackNavigator } from 'react-navigation-stack';
import IntroScreen from './src/screens/IntroScreen';
import HomeScreen from './src/screens/HomeScreen';
import BaslicaScreen from './src/screens/BaslicaScreen';
const navigator = createStackNavigator(
{
Intro: IntroScreen,
Home: HomeScreen,
Baslica: BaslicaScreen
},
{
initialRouteName: "Intro",
}
);
export default createAppContainer(navigator);
【问题讨论】:
-
亲爱的@Emirhan,您是否将您的应用程序通过您的 AppContainer 包装在根级别,例如
... ? -
感谢您的回答和编辑@Nostromo!而且我对原生反应很陌生,所以我不能 100% 确定你的意思。但我认为我没有用 AppContainer 包装我的应用程序。我会快速看看你的意思
-
找了找,好像没用 AppContainer 包起来
标签: react-native react-navigation