I have a dropdown IconButton on a LazyColumn list of rows.
This dropdown exposes two actions, "View Profile" and "View History".
I am picking the userId and navigating to the respective screens/fragments depending on which action the user selects.
My navigation logic(using navManager) is on the view model of the current fragment with the dropdowns. On navigation I get the below stacktrace. What am I possibly doing wrong?
java.lang.IllegalArgumentException: View=androidx.compose.ui.window.PopupLayout{3ddfe66 V.E...... ......ID 0,0-339,240 #1020002 android:id/content} not attached to window manager
at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:580)
at android.view.WindowManagerGlobal.updateViewLayout(WindowManagerGlobal.java:474)
at android.view.WindowManagerImpl.updateViewLayout(WindowManagerImpl.java:101)
at androidx.compose.ui.window.PopupLayout.updatePosition(AndroidPopup.android.kt:584)
at androidx.compose.ui.window.PopupLayout.onGlobalLayout(AndroidPopup.android.kt:683)
at android.view.ViewTreeObserver.dispatchOnGlobalLayout(ViewTreeObserver.java:1070)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3189)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2204)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9069)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:999)
at android.view.Choreographer.doCallbacks(Choreographer.java:797)
at android.view.Choreographer.doFrame(Choreographer.java:732)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:984)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:8107)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
Dropdown:
var expanded by remember { mutableStateOf(false) }
Icon(Icons.Default.KeyboardArrowDown, "Keyboard Arrow Down")
DropdownMenu(
expanded = expanded,
onDismissRequest = { expanded = false },
modifier = Modifier
.padding(horizontal = 24.dp)
) {
listItems.forEachIndexed { index, label ->
DropdownMenuItem(onClick = {
onMenuSelect(index, clientDetails.clientId)
}) {
Text(text = label)
}
}
}