Keyboard language switch to QWERTY with all numeric keyboardType
See original GitHub issueDescription:
It seems that when your keyboard language isn’t set to English (US) and you focus on a TextInput with a keyboardType=“numeric” prop, it will change the keyboard language to English (US).
I tried with “number-pad”, “decimal-pad”, “numeric”, “phone-pad”. None of them works as expected. I tried with different languages:
Issues appear on French (France) German (Germany) Italian
No issue Arabic, Najdi
React Native version:
System:
OS: macOS 10.15.1
CPU: (12) x64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
Memory: 1.14 GB / 16.00 GB
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 10.16.3 - /usr/local/bin/node
Yarn: 1.15.2 - /usr/local/bin/yarn
npm: 6.9.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
IDEs:
Android Studio: 3.4 AI-183.6156.11.34.5522156
Xcode: 11.3/11C29 - /usr/bin/xcodebuild
npmPackages:
react: 16.9.0 => 16.9.0
react-native: 0.61.5 => 0.61.5
npmGlobalPackages:
react-native-cli: 2.0.1
Steps To Reproduce
1- Start your iOS simulator 2- Go to Settings / General / Keyboard 3- Make sure you have English (US) and French (France) keyboards 4- then:
react-native init keyboardSwitchToQwerty
5- Edit your App.js file as below:
const App = () => (
<View>
<TextInput />
<TextInput keyboardType="decimal-pad" />
</View>
);
6- Open the app
7- Set your keyboard to French (France) and switch between the two <TextInput />
8- Issu: Your keyboard will automatically switch to English (US)
Expected Results
The keyboards shouldn’t switch to English (US) by itself. It should stay on the French (France):
To make this GIF possible, I removed the English (US) keyboard from Settings
Issue Analytics
- State:
- Created 4 years ago
- Reactions:10
- Comments:16
Top GitHub Comments
Any news?
I finally found a solution that worked for me 😁
Issue
This is an IOS issue, when you use a numeric keyboard, it changes the keyboard language and uses app default language : variable
CFBundleDevelopmentRegion
–> In my case CFBundleDevelopmentRegion was “en”, that’s why it transformed azerty keyboard to qwerty keyboardSolution
Solution that worked for me : Remove the following 2 lines in info.plist