react-native - (本机反应):如何在应用程序重新启动时保存选定的语言
问题描述
我希望语言更改反映在整个应用程序上,并且我希望应用程序在用户刷新页面时记住上次选择的语言。在我的 languageSelectionScreen 下面给出,它根据所选语言(英语或阿拉伯语)设置翻译
语言选择屏幕.js
import StringsOfLanguages from './StringsOfLanguages';
const HomeScreen = ({navigation}) => {
const lang = [
{shortform: 'en', longform: 'English'},
{shortform: 'ar', longform: 'Arabic'},
];
const settext = (value) => {
StringsOfLanguages.setLanguage(value);
navigation.navigate('MainPage', {selectedLanguage: value});
};
return (
<SafeAreaView>
<View>
<Text>
Please Select Preferred Language
</Text>
<Image
source={require('../imgs/logo.png')}
/>
<ScrollView >
{lang.map((item, key) => (
<View key={key}>
<Text
onPress={() => settext(item.shortform)}
>
{item.longform}
</Text>
<View />
</View>
))}
</ScrollView>
</View>
</SafeAreaView>
);
};
在这个屏幕上,当用户选择阿拉伯语或英语的语言按钮时,它调用settext函数,该函数根据所选语言设置语言,但我需要以某种方式为整个应用程序保存这个值,并让它保持不变。在刷新/重新启动应用程序时
解决方案
推荐阅读
- c++ - 将脚本库嵌入到 C++ 输出可执行文件中
- c++ - 我们什么时候更倾向于使用重载而不是函数模板
- python - 字典值
- jenkins - 无法在 Windows 系统中使用 ffmpeg 在 Jenkins 中录制视频
- mysql - 带有更新的 MYSQL 触发器
- cordova - 从外部网站应用程序引用 Cordova 注入的 JS 文件的位置
- asp.net - 我无法在 itemtemplate 之间的任何内容后面的代码中进行编辑
- dart - 飞镖中的 Hmac sha1 和 base 64 编码
- c# - 在 Nunit 3.0 及更高版本中测试异常
- c++ - 如何用用户的输入填充二维数组?