我的屏幕在模拟器和少数移动设备 (Android) React-Native 中重叠。 (@react-navigation/stack": "^5.10.0")
My screens are getting overlapped in emulator and few mobile devices(Android) React-Native. (@react-navigation/stack": "^5.10.0")
我正在为我的屏幕使用堆栈导航。我最初连接了我的设备(Android 版本 10 - realme XT)并且导航工作正常。但后来我在模拟器(Android 版本 9)上尝试了同样的事情,它开始重叠屏幕。其他设备(Android 版本 9 redmi note 5 pro)也发生了同样的事情。
导航文件代码为:
import React from 'react';
import {createStackNavigator} from '@react-navigation/stack';
import Abc from './abc';
import xyzfrom './xyz';
import {ImageBackground} from 'react-native';
import CommonBackground from '../../resource/images/StartupScreenBackground.png';
import Styles from './style';
import {NavigationContainer, DefaultTheme} from '@react-navigation/native';
import srt from './srt';
const MyTheme = {
...DefaultTheme,
colors: {
...DefaultTheme.colors,
primary: 'rgb(255, 45, 85)',
background: 'transparent',
},
};
const StartScreen = createStackNavigator();
function StartScreenNavigation(props) {
return (
<ImageBackground source={CommonBackground} style={Styles.imageContainer}>
<NavigationContainer theme={MyTheme}>
<StartScreen.Navigator
screenOptions={{
headerShown: false,
}}
>
<StartScreen.Screen name="abc" component={abc} />
<StartScreen.Screen
name="xyz"
component={xyz}
/>
<StartScreen.Screen name="srt" component={srt} />
</StartScreen.Navigator>
</NavigationContainer>
</ImageBackground>
);
}
export default StartScreenNavigation;
我不明白这是Android版本的问题还是堆栈导航的问题。
谢谢!!
我不得不创建另一个组件并使用 props.children
以便我可以环绕它。
是的,它很蹩脚,它和为所有单独的屏幕包装 ImageBackground 一样好,但我的解决方案有助于减少至少几行代码。
太好了!!无需使用主题。但如果它适用于其他 android 版本(低于 10),那将是最好的解决方案。
谢谢!!
我正在为我的屏幕使用堆栈导航。我最初连接了我的设备(Android 版本 10 - realme XT)并且导航工作正常。但后来我在模拟器(Android 版本 9)上尝试了同样的事情,它开始重叠屏幕。其他设备(Android 版本 9 redmi note 5 pro)也发生了同样的事情。
导航文件代码为:
import React from 'react';
import {createStackNavigator} from '@react-navigation/stack';
import Abc from './abc';
import xyzfrom './xyz';
import {ImageBackground} from 'react-native';
import CommonBackground from '../../resource/images/StartupScreenBackground.png';
import Styles from './style';
import {NavigationContainer, DefaultTheme} from '@react-navigation/native';
import srt from './srt';
const MyTheme = {
...DefaultTheme,
colors: {
...DefaultTheme.colors,
primary: 'rgb(255, 45, 85)',
background: 'transparent',
},
};
const StartScreen = createStackNavigator();
function StartScreenNavigation(props) {
return (
<ImageBackground source={CommonBackground} style={Styles.imageContainer}>
<NavigationContainer theme={MyTheme}>
<StartScreen.Navigator
screenOptions={{
headerShown: false,
}}
>
<StartScreen.Screen name="abc" component={abc} />
<StartScreen.Screen
name="xyz"
component={xyz}
/>
<StartScreen.Screen name="srt" component={srt} />
</StartScreen.Navigator>
</NavigationContainer>
</ImageBackground>
);
}
export default StartScreenNavigation;
我不明白这是Android版本的问题还是堆栈导航的问题。
谢谢!!
我不得不创建另一个组件并使用 props.children
以便我可以环绕它。
是的,它很蹩脚,它和为所有单独的屏幕包装 ImageBackground 一样好,但我的解决方案有助于减少至少几行代码。
太好了!!无需使用主题。但如果它适用于其他 android 版本(低于 10),那将是最好的解决方案。
谢谢!!