I know it\'s possible to have multiple languages in a single application through the res/string and depending on Locale. Here is a case (ANDROID) controling the user langua
To expand on Jim's answer if you change the intent to:
intent.setClassName("com.android.settings", "com.android.settings.LocalePicker"); 
It will drop the user off directly in the language selection list and once a language is selected it will return to your application.
It removes a click, doesn't make the user think about which of the three (language, dictionary, and keyboard) options to choose and returns to your app immediately after selection.