5 android react-native expo react-navigation-v5
我正在 React Native 和 Expo 中练习一个非常基本的项目。该项目不使用弹出的项目,因此我无法直接与特定平台(Android 和 iOS)的项目交互,我希望它保持这种状态。
几天前,当我尝试编辑登录表单的字段时,我在 Android 中看到了一个问题。事实证明,在键盘打开之前,出现了一个白色的小闪光。正如我在 GitHub 上阅读的几乎所有 Expo 页面一样,这是因为应用程序具有应用程序的空白视图,并且可以在这些平台的项目中更改此行为(我之前提到过,我没有)并且我本周一直在寻找一种方法来实现这一目标,然后我找到了这个文档,但我仍然不知道这是否有效以及是否可以更改所述根视图颜色: https: //docs.expo.io/版本/最新/sdk/注册根组件/
键盘问题的视频:https://i.stack.imgur.com/uOvZl.jpg
我遇到的错误与此视频中的错误相同,但我不知道是否有办法解决该问题,因为我必须使用它来React Navigation v5创建导航堆栈。另外,我使用黑色作为背景,这使得这种行为更加明显。
我尝试过不同的方法,例如更改键盘的布局模式(但这使我失去了滚动的能力),也使其对视图的响应更加灵敏,KeyboardAvoidingView但这ScrollView是不可能的。
这是我正在使用的:
这是一些代码:
package.json dependencies
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start"
},
"dependencies": {
"@react-native-community/masked-view": "0.1.10",
"@react-navigation/bottom-tabs": "^5.10.6",
"@react-navigation/native": "^5.8.6",
"@react-navigation/stack": "^5.12.3",
"expo": "~39.0.2",
"expo-status-bar": "~1.0.2",
"react": "16.13.1",
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-39.0.4.tar.gz",
"react-native-gesture-handler": "~1.7.0",
"react-native-reanimated": "~1.13.0",
"react-native-safe-area-context": "3.1.4",
"react-native-screens": "~2.10.1",
"react-native-web": "~0.13.12"
},
"devDependencies": {
"@babel/core": "~7.9.0"
},
"private": true
}
Run Code Online (Sandbox Code Playgroud)
App.json
{
"expo": {
"name": "appName",
"slug": "appName",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"backgroundColor": "#000000",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#000000"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": ["**/*"],
"ios": {
"supportsTablet": false
},
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#FFFFFF"
}
},
"androidStatusBar": {
"barStyle": "light-content",
"backgroundColor": "#000000"
},
"web": {
"favicon": "./assets/favicon.png"
}
}
}
Run Code Online (Sandbox Code Playgroud)
App.js
import React from "react";
import { View, TextInput } from "react-native";
export default App = () => {
return (
<View
style={{
backgroundColor: "#000",
flex: 1,
alignItems: "center",
justifyContent: "center",
}}
>
<TextInput
placeholder="Email"
placeholderTextColor="#424242"
style={{
color: "white",
backgroundColor: "#d8d8d8",
padding: 15,
width: "80%",
}}
/>
</View>
);
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
950 次 |
| 最近记录: |