-
Notifications
You must be signed in to change notification settings - Fork 1.9k
IllegalStateException: ShellPageContainer#onMeasure() did not set the measured dimension by calling setMeasuredDimenstion() #13152
Copy link
Copy link
Closed
Labels
area-controls-shellShell Navigation, Routes, Tabs, FlyoutShell Navigation, Routes, Tabs, Flyoutfixed-in-8.0.0-preview.1.7762Look for this fix in 8.0.0-preview.1.7762!Look for this fix in 8.0.0-preview.1.7762!platform/androidt/bugSomething isn't workingSomething isn't working
Milestone
Description
Description
I've seen this report sporadically in the wild (via AppCenter) but I haven't yet been able to reproduce.
May be related to #10776 ?
Is it possible for there to be a case where Child.NativeView is not an Android.Views.View (or becomes null?) during a layout cycle? Perhaps SetMeasuredDimension should always be called regardless of Child.PlatformView?
maui/src/Controls/src/Core/Compatibility/Handlers/Shell/Android/ShellPageContainer.cs
Lines 50 to 58 in 50e2891
| protected override void OnMeasure(int widthMeasureSpec, int heightMeasureSpec) | |
| { | |
| if (Child.PlatformView is AView aView) | |
| { | |
| aView.Measure(widthMeasureSpec, heightMeasureSpec); | |
| SetMeasuredDimension(aView.MeasuredWidth, aView.MeasuredHeight); | |
| } | |
| } | |
| } |
Steps to Reproduce
pending
Link to public reproduction project repository
pending
Version with bug
7.0 (current)
Last version that worked well
Unknown/Other
Affected platforms
Android
Affected platform versions
Android 8.1, 9, 10
Did you find any workaround?
No response
Relevant log output
android.view.View.measure View.java:22298
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild CoordinatorLayout.java:795
com.google.android.material.appbar.HeaderScrollingViewBehavior.onMeasureChild HeaderScrollingViewBehavior.java:100
com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onMeasureChild AppBarLayout.java:2253
androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure CoordinatorLayout.java:866
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.FrameLayout.onMeasure FrameLayout.java:185
android.view.View.measure View.java:22286
android.widget.LinearLayout.measureVertical LinearLayout.java:975
android.widget.LinearLayout.onMeasure LinearLayout.java:702
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.FrameLayout.onMeasure FrameLayout.java:185
android.view.View.measure View.java:22286
androidx.drawerlayout.widget.DrawerLayout.onMeasure DrawerLayout.java:1156
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.LinearLayout.measureChildBeforeLayout LinearLayout.java:1539
android.widget.LinearLayout.measureHorizontal LinearLayout.java:1184
android.widget.LinearLayout.onMeasure LinearLayout.java:704
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.FrameLayout.onMeasure FrameLayout.java:185
androidx.appcompat.widget.ContentFrameLayout.onMeasure ContentFrameLayout.java:145
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.FrameLayout.onMeasure FrameLayout.java:185
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.FrameLayout.onMeasure FrameLayout.java:185
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.LinearLayout.measureChildBeforeLayout LinearLayout.java:1539
android.widget.LinearLayout.measureVertical LinearLayout.java:823
android.widget.LinearLayout.onMeasure LinearLayout.java:702
android.view.View.measure View.java:22286
android.view.ViewGroup.measureChildWithMargins ViewGroup.java:6668
android.widget.FrameLayout.onMeasure FrameLayout.java:185
com.android.internal.policy.DecorView.onMeasure DecorView.java:837
android.view.View.measure View.java:22286
android.view.ViewRootImpl.performMeasure ViewRootImpl.java:2646
android.view.ViewRootImpl.measureHierarchy ViewRootImpl.java:1674
android.view.ViewRootImpl.performTraversals ViewRootImpl.java:1933
android.view.ViewRootImpl.doTraversal ViewRootImpl.java:1558
android.view.ViewRootImpl$TraversalRunnable.run ViewRootImpl.java:7463
android.view.Choreographer$CallbackRecord.run Choreographer.java:1041
android.view.Choreographer.doCallbacks Choreographer.java:847
android.view.Choreographer.doFrame Choreographer.java:774
android.view.Choreographer$FrameDisplayEventReceiver.run Choreographer.java:1027
android.os.Handler.handleCallback Handler.java:809
android.os.Handler.dispatchMessage Handler.java:102
android.os.Looper.loop Looper.java:166
android.app.ActivityThread.main ActivityThread.java:7555
java.lang.reflect.Method.invoke Method.java
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run RuntimeInit.java:469
com.android.internal.os.ZygoteInit.main ZygoteInit.java:963Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area-controls-shellShell Navigation, Routes, Tabs, FlyoutShell Navigation, Routes, Tabs, Flyoutfixed-in-8.0.0-preview.1.7762Look for this fix in 8.0.0-preview.1.7762!Look for this fix in 8.0.0-preview.1.7762!platform/androidt/bugSomething isn't workingSomething isn't working