I use Visual Studio 2015 / Xamarin to build my application for both Android 5.1 and Android 6.0 (the same apk is installed on both).
When I pointed out android:inputType="textCapCharacters" in my axml, the AllCaps keyboard appeared, as expected, on Android 6.0, but not on Android 5.1. I added android:textAllCaps="true" to my axml file, but on Android 5.1 there is still no AllCaps keyboard. I set the filter using EditText.SetFilters(new IInputFilter[] { new InputFilterAllCaps() }); and although on Android 5.1 the soft keyboard displays lowercase letters, AllCaps is now used as the input field.
EDIT: The behavioral differences that I observed and presumably related to the OS were actually because I had different versions of Google Keyboard on test devices. After I updated the devices to the latest Google Keyboard (released in July 2016 at the time of this writing), the behavior of โall capital lettersโ was the same for all operating systems. Now all devices display lowercase letters on the keyboard, but the input is SetFilters(new IInputFilter[] { new InputFilterAllCaps() }); using all uppercase SetFilters(new IInputFilter[] { new InputFilterAllCaps() }); due to SetFilters(new IInputFilter[] { new InputFilterAllCaps() });
Tony Aug 27 '16 at 15:45 2016-08-27 15:45
source share