1

我曾经i18n在我的 React Native 应用程序中使用多种语言。

问题是当Localization设置基于LTR我无法将TextInput方向更改为RTL. 我试过writingDirection了,但它只适用于IOS。我也试过textAlign了,但一无所获:(。

这是我的i18n设置和TextInput示例代码:

i18n.js

import { I18nManager } from 'react-native';
import * as Localization from 'expo-localization';
import i18n from 'i18n-js';
import fa from '../locales/fa';
import en from '../locales/en';

I18nManager.forceRTL(false);
Localization.locale = 'en';

i18n.fallbacks = true;
i18n.translations = { fa, en };
i18n.locale = Localization.locale;

export default i18n;

TextInput示例代码

<TextInput
 style={{textAlign: 'right'}}   // here is the style that does'nt work.        
 label={i18n.t('signUp.surName')}
 value={formData.surName.value}
 onChangeText={(value) => changeHandler('surName', value)} 
/>

在此处输入图像描述

4

1 回答 1

1

我写了零食示例并没有发现问题: https ://snack.expo.io/@djalik/text-input-align-right 可能是您使用的是旧版本的 expo/react-native。

于 2019-10-13T15:31:57.897 回答