Bug 40121 - [Android/iOS] With ListView in a StackLayout, with a button below the ListView, when an Entry in the ListView is selected, you cannot get to the button without dismissing keyboard.
Summary: [Android/iOS] With ListView in a StackLayout, with a button below the ListVie...
Alias: None
Product: Forms
Classification: Xamarin
Component: Forms ()
Version: 2.1.0
Hardware: Macintosh Mac OS
: Normal normal
Target Milestone: ---
Assignee: Bugzilla
Depends on:
Reported: 2016-04-05 18:50 UTC by Jon Goldberger [MSFT]
Modified: 2016-10-20 08:25 UTC (History)
3 users (show)

Tags: ac
Is this bug a regression?: ---
Last known good build:

Test Project (95.29 KB, application/zip)
2016-04-05 18:50 UTC, Jon Goldberger [MSFT]

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 40121 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 Jon Goldberger [MSFT] 2016-04-05 18:50:59 UTC
Created attachment 15609 [details]
Test Project

## Description

With ListView in a StackLayout, with a button below the ListView, when an Entry in the ListView is selected, you cannot get to the button without dismissing the keyboard.

Reporting customer only reported this issue for Android, but it seems to be an issue on iOS as well. 

## Steps to reproduce

1. Open the attached test project.

2. Deploy the Android app project.

3. Click on an Entry in the ListView.

4. try to scroll down to see the Continue button.

Expected result: Can scroll down to see and tap the Continue button.

Actual result: Can not scroll down to see the and tap the Continue button.

## Notes

Originally the reporting customer had the StackLayout in a ScrollView, but they noted that this was added to try to get around this issue, so I removed it. The issue is the same with or without the outer ScrollView. 

## Environment

Forms version:

=== Xamarin Studio Business ===

Version 5.10.3 (build 51)
Installation UUID: 964c531b-d928-456b-a9ae-e1f82266b360
	Mono 4.2.3 (explicit/832de4b)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 402030004

=== Xamarin.Profiler ===

Version: 0.32.0
Location: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

=== Apple Developer Tools ===

Xcode 7.3 (10183.3)
Build 7D175

=== Xamarin.iOS ===

Version: (Xamarin Business)
Hash: 5f11db8
Branch: master
Build date: 2016-03-25 21:26:55-0400

=== Xamarin.Android ===

Version: (Xamarin Business)
Android SDK: /Users/apple/Library/Developer/Xamarin/android-sdk-mac_x86
	Supported Android versions:
		4.0.3 (API level 15)
		4.1   (API level 16)
		4.2   (API level 17)
		4.3   (API level 18)
		4.4   (API level 19)
		5.0   (API level 21)
		5.1   (API level 22)
		6.0   (API level 23)

SDK Tools Version: 24.4.1
SDK Platform Tools Version: 23.1
SDK Build Tools Version: 23.0.3

Java SDK: /usr
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

Android Designer EPL code available here:

=== Xamarin Android Player ===

Version: 0.6.5
Location: /Applications/Xamarin Android Player.app

=== Xamarin.Mac ===

Version: (Xamarin Business)

=== Xamarin Inspector ===

Hash: 45b35bb
Branch: master
Build date: Thu Jan 14 18:53:32 UTC 2016

=== Build Information ===

Release ID: 510030051
Git revision: f3c0d982165f785772d125f02668370d929014fb
Build date: 2016-03-24 18:51:31-04
Xamarin addins: ee5cfd3ecb6b20de47c1d25efb9a9abc101e8ce7
Build lane: monodevelop-lion-cycle6-c6sr3

=== Operating System ===

Mac OS X 10.11.4
Darwin Jons-iMac.local 15.4.0 Darwin Kernel Version 15.4.0
    Fri Feb 26 22:08:05 PST 2016
    root:xnu-3248.40.184~3/RELEASE_X86_64 x86_64
Comment 2 François M 2016-10-20 08:11:06 UTC
This can be reproduced in a simpler way: an entry or and editor and a button.

- up to XF 2.10.6524 included, tapping the button doesn't dismiss the keyboard.
- from 2.1.06526 to (latest available as of today): tapping the button dismiss the keyboard.

Repro page:

public class EditorAndButtonReproPage : ContentPage
        public EditorAndButtonReproPage()
            BackgroundColor = Color.Gray;
            Padding = 50;
            var editor = new Editor {HorizontalOptions = LayoutOptions.FillAndExpand};
            var editorButton = new Button {Text = "OK", HorizontalOptions = LayoutOptions.End};
            var editorLayout = new StackLayout {Orientation = StackOrientation.Horizontal, Children = { editor, editorButton}, VerticalOptions = LayoutOptions.Start};
            var endtry = new Entry { Placeholder = "Entry", HorizontalOptions = LayoutOptions.FillAndExpand };
            var entryButton = new Button { Text = "OK", HorizontalOptions = LayoutOptions.End };
            var entryLayout = new StackLayout { Orientation = StackOrientation.Horizontal, Children = { endtry, entryButton }, VerticalOptions = LayoutOptions.Start };
            Content = new StackLayout {Children = {editorLayout, entryLayout}};
Comment 3 François M 2016-10-20 08:12:32 UTC
Also, the name of the bug should be changed as this is not related to either a ListView or a StackLayout.
Comment 4 François M 2016-10-20 08:25:48 UTC
Correction: regression starts from, not