dotnet / maui

.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
https://dot.net/maui
MIT License
22.26k stars 1.76k forks source link

TabbedPage displaying contents of last tab while other tab was selected #26014

Open GregAtWasp opened 7 hours ago

GregAtWasp commented 7 hours ago

Description

The TabbedPage behaves weird when using a combination of Stacklayout, CollectionViews, buttons and horizontalstacklayout over multiple tabs. If you click the second to last tab (Penultimate) the correct title is selected (tabheader) but the content below it is displayed from the wrong tab (Always the content of the last tabpage).

Steps to Reproduce

  1. Create a new maui project.
  2. Add tabpage with multiple tabpages
  3. Place HideSoftInputOnTapped=true for all the tabpages
  4. Add to each tabpage a stacklayout containing a horizontalstacklayout and a collectionview with header, content and footer and a button.
  5. Run the app.
  6. After startup. immediately press the penultimate tab and observe the bug.

Expected outcome: Penultimate tab is displayed on the screen actual outcome: The header of the penultimate is selected but the content below is of the last tab page. (see testproject for example)

Link to public reproduction project repository

https://github.com/GregAtWasp/MauiTabbedPageBug

Version with bug

9.0.0 GA

Is this a regression from previous behavior?

Yes, this used to work in Xamarin.Forms

Last version that worked well

Unknown/Other

Affected platforms

Android

Affected platform versions

android 7.1 and up

Did you find any workaround?

not yet but still looking.

Relevant log output

ninachen03 commented 4 hours ago

This issue has been verified using Visual Studio 17.13.0 Preview 1.0 (9.0.10 & 9.0.0 & 8.0.100 & 8.0.3 ). Can repro it on Android platform Image