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.24k stars 1.76k forks source link

Shell.FlyoutFooterTemplate doesn't display Grid control #9685

Open belmonmi opened 2 years ago

belmonmi commented 2 years ago

Description

Grid control not showing in the Shell.FlyoutFooterTemplate

Steps to Reproduce

  1. Create new .Net MAUI application.
  2. Set Shell.FlyoutBehavior="Flyout"
  3. Add Shell.FlyoutFooterTemplate/DataTemplate/Grid
  4. Grid will not be displayed.
  5. GitHub repo that reproducing the issue: https://github.com/belmonmi/AppShellFooter

Version with bug

6.0.408

Last version that worked well

Unknown/Other

Affected platforms

iOS, I was not able test on other platforms

Affected platform versions

iOS 15.5

Did you find any workaround?

No

Relevant log output

2022-08-26 10:11:35.462542-0500 AppShellFooter[803:904782] 
Options:
2022-08-26 10:11:35.462693-0500 AppShellFooter[803:904782]   --bool-flag (Example)
    type: bool  default: false
2022-08-26 10:11:35.462806-0500 AppShellFooter[803:904782]   --aot-lazy-assembly-load (Load assemblies referenced by AOT images lazily)
    type: bool  default: false
Resolved pending breakpoint for 'AppShellFooter.Program.Main(System.String[])' to C:\Projects\iNet6\Mobile\Test\Issues\AppShellFooter\AppShellFooter\Platforms\iOS\Program.cs:10 [0x00000].
Resolved pending breakpoint for 'Xamarin.HotReload.HotReloadAgent.BreakpointSendToIde(System.String)' to D:\a\_work\1\s\HotReload\Source\Xamarin.HotReload.Agent\HotReloadAgent.cs:419 [0x00000].
Resolved pending breakpoint for 'Xamarin.HotReload.HotReloadAgent.BreakpointCheckpoint()' to D:\a\_work\1\s\HotReload\Source\Xamarin.HotReload.Agent\HotReloadAgent.cs:414 [0x00000].
2022-08-26 10:11:37.677046-0500 AppShellFooter[803:904782] SecTaskLoadEntitlements failed error=22 cs_flags=200, pid=803
2022-08-26 10:11:37.677349-0500 AppShellFooter[803:904782] SecTaskCopyDebugDescription: AppShellFooter[803]/0#-1 LF=0
2022-08-26 10:11:37.684128-0500 AppShellFooter[803:904782] SecTaskLoadEntitlements failed error=22 cs_flags=200, pid=803
2022-08-26 10:11:37.684395-0500 AppShellFooter[803:904782] SecTaskCopyDebugDescription: AppShellFooter[803]/0#-1 LF=0
Thread started:  #2
Thread started:  #3
Thread started:  #4
2022-08-26 10:11:38.800035-0500 AppShellFooter[803:904782] SecTaskLoadEntitlements failed error=22 cs_flags=200, pid=803
2022-08-26 10:11:38.800303-0500 AppShellFooter[803:904782] SecTaskCopyDebugDescription: AppShellFooter[803]/0#-1 LF=0
2022-08-26 10:11:38.894043-0500 AppShellFooter[803:904782] [TableView] Warning once only: UITableView was told to layout its visible cells and other contents without being in the view hierarchy (the table view or one of its superviews has not been added to a window). 
This may cause bugs by forcing views inside the table view to load and perform layout without accurate information (e.g. table view bounds, trait collection, layout margins, safe area insets, etc), 
and will also cause unnecessary performance overhead due to extra layout passes. 
Make a symbolic breakpoint at UITableViewAlertForLayoutOutsideViewHierarchy to catch this in the debugger and see what caused this to occur, so you can avoid this action altogether if possible, 
or defer it until the table view has been added to a window. 
Table view: <_UIMoreListTableView: 0x7fb45f153600; frame = (0 0; 0 0); clipsToBounds = YES; gestureRecognizers = <NSArray: 0x600000c8a400>; layer = <CALayer: 0x60000066a340>; contentOffset: {0, 0}; contentSize: {0, 0}; adj
ustedContentInset: {0, 0, 0, 0}; dataSource: <UIMoreListController: 0x7fb45da44a20>>
Thread started: .NET Timers #5
Thread started: <Thread Pool> #6
Thread started: .NET ThreadPool Gate #7
Thread started: <Thread Pool> #8
Thread started: <Thread Pool> #9
Thread started: <Thread Pool> #10
Thread started: <Thread Pool> #11
Thread started: <Thread Pool> #12
Thread started: <Thread Pool> #13
Thread started: <Thread Pool> #14
2022-08-26 10:11:43.601408-0500 AppShellFooter[803:904812] Warning: observer object was not disposed manually with Dispose()
2022-08-26 10:11:43.601692-0500 AppShellFooter[803:904812] Warning: observer object was not disposed manually with Dispose()
ghost commented 2 years ago

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

belmonmi commented 2 years ago

@rachelkang When do you think .Net MAUI will be ready for production level applications for iOS devices? For example the bug described in this issue doesn't exist in Android. Do you have some kind list what controls and functionality to avoid for now for iOS development? Or opposite list of controls and functionality that definitely works in both environments? Otherwise it is impossible to plan releases for applications. Having idea of the "least common denominator" will help to structure development process. Thank you, Michael.

tjvg91 commented 1 year ago

Any resolution for this? I'm experiencing the same for Xamarin iOS 16.4. Running on iPhone iOS 16.4.

Zhanglirong-Winnie commented 1 year ago

Verified this issue with Visual Studio Enterprise 17.8.0 Preview 1.0. Can repro on iOS platform with sample repro steps.But the sample project is empty.