I have an Android application in which I have given an option for the users to select the language. In my app I have given Hindi and English language when the user selects the language Hindi it shows the Hindi strings perfectly.
But what I want to do is when the user selects Hindi language the input type (keyboard) should also changes to Hindi. I can use custom keyboard inside my Android app.
Related
On an android device I can load different languages.
Example:
English (Set as default language)
French
Italian
How can I get this list programmatically?
I know that I can get the language with this code:
Locale.getDefault().getDisplayLanguage()
Or is there a way to set the fallback language of my android app to the second language of the system?
EDIT://
Szenario:
Selected Android System Languages:
English (Set as default)
French
Italian
Supported App Languages:
string.xml (German) -> set as default
string-fr.xml (French)
string-it.xml (Italian)
Current App behavior:
Displays the app with the German translation.
Expected new App behavior:
Displays the app with the French translation because French is on the 2nd position in my Android System Language list.
This will return all locales available on the device.
Locale.getAvailableLocales()
I am creating an application in which i have given an option for the users to select the language. In my app i have given Tamil and English language when the user selects the language Tamil it shows the Tamil strings perfectly.But what i want to do is when the user selects Tamil language the input type(keyboard) should also changes to Tamil even if the user doesn't have any Tamil keyboard application.
Can anyone tell me how can i change the keyboard input to the selected language using locale in android.
The input type depends on the user's phone or tablet, if they have the Google Indic Keyboard and have selected Tamil as an optional language then only they will be able to input Tamil. You can prompt the user to download the Google Indic Keyboard app and select Tamil language. Here is the link -
https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwiXvbqLk9DQAhXGs48KHYs7AvkQFggcMAA&url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.google.android.apps.inputmethod.hindi%26hl%3Den&usg=AFQjCNGp4o8Sx51FsUibPbqog_lFETEwjA
I am creating an android application in which i have used the south indian language to display the text in tamil for which i have converted all the strings to tamil but i need to give the inputs in edit text as tamil.
How can i do this if the user doesn't have a tamil keyboard installed with them can anyone show me some examples for input the text in android with local languages.What i have done so far is converted the strings to tamil but i want to give the inputs in tamil.I have tried using some examples which gives the values as tamil but it dosn't shows how to give the inputs in tamil.
The only option would be to create a custom Keyboard for your app, you have little to no control over the system InputMethod.
I ran into a problem with default locale/language in EditText.
The default keyboard language does not match the system language and locale
Locale.getDefault() // "russian" For text input cyrillic i need to switch the language English->Russian. Reading the documentation I could not find how to set the default keyboard language. I hope you give me an explanation in this regard.)
As far as I know that is not possible.
You are trying to force the user to input only in russian.
You shouldn't do that because of the user experience.
Also, the language may not be installed on the user's keyboard and that may lead to the crash.
I am using Hindi fonts in my application by using the following code as:
Typeface font = Typeface.createFromAsset(this.getAssets(), "fonts/DroidHindi.ttf");
txt.setTypeface(font);
Now I wanted to take input from the user in an edit Text box in hindi language..So for this, Hindi soft keypad is required , can anyone pls guide me how to add hindi language soft keypad?
It depends entirely on the user's choice of keyboard.
To test Hindi input, download one of the Hindi IME available on the market, such as PaniniKeypad Hindi IME, or get GO Keyboard and "Hindi for GO Keyboard", all of them available on the Android Market for free.