unoplatform / uno

Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!
https://platform.uno
Apache License 2.0
8.93k stars 725 forks source link

Inconsistent behavior for ListView Footer placement [iOS, Android] vs Uwp #1725

Open ghost opened 5 years ago

ghost commented 5 years ago

Current behavior

If a listview with footer does not contain enought item to cover the screen the footer is at the bottom of the list who's streching to cover the whole page on UWP but on iOS and Android the footer hangs directly under the last ListItem. Adding a background to the ListView hows that the list does cover the full page on iOS and Android.

Expected behavior

The footer of the ListView should be at the bottom like on UWP

How to reproduce it (as minimally and precisely as possible)

Have a ListView with footer and few or no item.

Environment

Nuget Package:

Package Version(s): Uno.UI 3.1.6 ListViewLayout.zip

Affected platform(s):

Visual Studio

davidjohnoliver commented 4 years ago

Note to contributors: this arises because on Android+iOS the footer is 'just' another item as far as NativeListViewBase is concerned, whereas on UWP it's a child of the ItemsPresenter, not the virtualizing panel. https://github.com/unoplatform/uno/blob/master/doc/articles/controls/ListViewBase.md#difference-in-the-visual-tree

GitHub
unoplatform/uno
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported. - unoplatform/uno
Guidemarcus commented 4 years ago

@davidjohnoliver @agneszitte-nventive @jeromelaban @MatFillion I updated this issue and provided a simple uno project reproducing this issue.