Bug 55349 - [Forms/Android] Entry in ListView Not Honoring Different Keyboards
Summary: [Forms/Android] Entry in ListView Not Honoring Different Keyboards
Alias: None
Product: Forms
Classification: Xamarin
Component: Android ()
Version: 2.3.4
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: ---
Assignee: Bugzilla
Depends on:
Reported: 2017-04-18 21:33 UTC by clay.zuvich
Modified: 2017-11-28 14:52 UTC (History)
6 users (show)

Tags: android keyboard entry keyboardtype ac
Is this bug a regression?: ---
Last known good build:

A test XAML page with a ListView and two Entries. (1.07 KB, application/xml)
2017-04-18 21:33 UTC, clay.zuvich
Test Project (Removed packages) (49.57 KB, application/zip)
2017-04-25 15:35 UTC, clay.zuvich
Device Information Screenshot (127.37 KB, image/png)
2017-04-25 15:36 UTC, clay.zuvich

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report for Bug 55349 on Developer Community or GitHub if you have new information to add and do not yet see a matching new report.

If the latest results still closely match this report, you can use the original description:

  • Export the original title and description: Developer Community HTML or GitHub Markdown
  • Copy the title and description into the new report. Adjust them to be up-to-date if needed.
  • Add your new information.

In special cases on GitHub you might also want the comments: GitHub Markdown with public comments

Related Links:

Description clay.zuvich 2017-04-18 21:33:14 UTC
Created attachment 21608 [details]
A test XAML page with a ListView and two Entries.

Component:  Entry in ListView

OS:  Android 7.0

Summary: When having two different keyboards (Numeric and Text) for multiple Entries in a ListView the Keyboard is not honored.

Steps to Reproduce:

* Create a Page with a ListView.
* In the ViewCell, create two different Entry controls.  The first one has a "Numeric" keyboard, and the second has a "Text" keyboard.
* Run the project
* Tap on the first Entry, then tap on the second Entry.  The keyboard stays Numeric on the second tap.

I have attached a sample XAML file.
Comment 1 Jimmy [MSFT] 2017-04-21 21:35:11 UTC
I created a sample project with the code you provided but I was not able to reproduce the issue. I observed that the correct keyboard was displayed for each Entry control. I tested on an Android 6.0 device and 7.1 emulator with Forms 2.3.4 and 2.3.5-pre1. 

Can you confirm which version of Forms you are experiencing this with? Are you able to test on another device or emulator to see if the issue also happens there? 

If so, let us know what devices/emulator you are using and attach a project that reproduces this so we can continue looking into this. Note that we may close this issue after 30 days of no response, so when providing the requested information set the report's status back to NEW. Thanks!
Comment 2 clay.zuvich 2017-04-25 15:33:41 UTC
Hi guys.  I attached a sample project.  I tested it on a different emulator and it looks like it is possibly device specific (S5 API23 - it worked fine).

I verified the bug on the following device (https://www.amazon.com/dp/B01DZJFSZ4/ref=twister_B01G7U1RY4?th=1)

It is a Moto G4 16GB running Android 7.0.  I attached a screenshot of the device information as well.
Comment 3 clay.zuvich 2017-04-25 15:35:41 UTC
Created attachment 21766 [details]
Test Project (Removed packages)
Comment 4 clay.zuvich 2017-04-25 15:36:18 UTC
Created attachment 21767 [details]
Device Information Screenshot
Comment 5 clay.zuvich 2017-04-25 15:37:36 UTC
Marked as NEW as recommended.  See comments above.  My apologies for the extra posts.
Comment 6 Jimmy [MSFT] 2017-04-26 21:52:18 UTC
I ran some tests with Test Cloud and this may not only be affecting certain devices, but only certain devices on Android 7.0. 

For the first test I just ran it on variety of devices[1] and I did see a couple that experienced the issue. So for the next test[2] I ran it on Android 7.1 and 7.0 devices and still only some devices had the issue. Notice though that only the LG Nexus 5X with Android 7.0 had the issue while the same device on Android 7.1 did not.

Normally I would think that some variety of OEM software/skinning could potentially be the cause, but the Nexus 5X runs vanilla Android and the Moto G4 seems to also. Do you know if this still happens with older versions of Forms?

[1] https://testcloud.xamarin.com/test/testkeyboardbug_adcfcb4c-0e55-4f85-93e0-51536c42fabd/?step=0_0_1
[2] https://testcloud.xamarin.com/test/testkeyboardbug_a910964e-f730-4e36-99da-1d9c25fa12b6/?step=0_0_1
Comment 7 clay.zuvich 2017-04-27 13:50:47 UTC
I just tried using the same hardware (Moto G4 16GB running Android 7.0) using Forms, and I did not see the issue.  Seems to be in 2.3.4.  Thanks!
Comment 8 clay.zuvich 2017-04-27 13:55:01 UTC
Edit that. I do see it in Forms  I haven't tested it in versions older than that.
Comment 9 clay.zuvich 2017-10-04 21:45:01 UTC
Any updates on this bug?  This feature is a fairly common scenario.  Thanks for the help!
Comment 10 Marc Bruins 2017-11-28 09:23:58 UTC
Is there an update on this? More and more of our customers are having Android 7.0 devices and it's start to get annoying. If there is no solution right now a workaround would also be good for the time being.
Comment 11 clay.zuvich 2017-11-28 14:52:30 UTC
As a workaround, I ended up converting my page to a ScrollView and ended up replicating the look/feel of a cell on both iOS and Android.  It may not help you in your current implementation though.  If a ListView is required, unfortunately you're stuck :(