i've created helper function related to spacer and...
# compose
r
i've created helper function related to spacer and invoking them like this :-
SpaceHeight(16.dp)
,
SpacerWidth(16.dp)
. After rolling out to beta channel we are observing crashes on some devices, more in the thread
Copy code
@Composable
fun SpacerHeight(size: Dp) {
    Spacer(modifier = Modifier.height(size))
}

@Composable
fun SpacerWidth(size: Dp) {
    Spacer(modifier = Modifier.width(size))
}
1
👀 1
Copy code
Fatal Exception: java.lang.ClassCastException: java.lang.Float cannot be cast to androidx.compose.runtime.z0
       at androidx.compose.runtime.ComposerImpl.addRecomposeScope(ComposerImpl.java:2448)
       at androidx.compose.runtime.ComposerImpl.startRestartGroup(ComposerImpl.java:2436)
       at UtilsKt.SpacerHeight-kHDZbjc(UtilsKt.java:55)
       at PrivacyScreenKt$PrivacyScreen$2$3$1$invoke$$inlined$itemsIndexed$default$2.invoke(PrivacyScreenKt.java:346)
       at androidx.compose.foundation.lazy.LazyDslKt$itemsIndexed$2.invoke(LazyDslKt.java:108)
       at PrivacyScreenKt$PrivacyScreen$2$3$1$invoke$$inlined$itemsIndexed$default$2.invoke(PrivacyScreenKt.java:108)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:135)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:34)
       at androidx.compose.foundation.lazy.LazyListScopeImpl$items$1$1.invoke(LazyListScopeImpl.java:179)
       at androidx.compose.foundation.lazy.LazyListScopeImpl$items$1$1.invoke(LazyListScopeImpl.java:179)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:107)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:34)
       at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocalKt.java:193)
       at androidx.compose.runtime.saveable.SaveableStateHolderImpl.SaveableStateProvider(SaveableStateHolderImpl.java:84)
       at androidx.compose.foundation.lazy.LazyListItemContentFactory$CachedItemContent$content$1.invoke(LazyListItemContentFactory.java:106)
       at androidx.compose.foundation.lazy.LazyListItemContentFactory$CachedItemContent$content$1.invoke(LazyListItemContentFactory.java:100)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:107)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:34)
       at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2$1$1.invoke(SubcomposeLayoutState.java:239)
       at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2$1$1.invoke(SubcomposeLayoutState.java:239)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:107)
       at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambdaImpl.java:34)
       at androidx.compose.runtime.ComposerKt.invokeComposable(ComposerKt.java:3276)
       at androidx.compose.runtime.ComposerImpl.doCompose(ComposerImpl.java:2551)
       at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(ComposerImpl.java:2514)
       at androidx.compose.runtime.CompositionImpl.composeContent(CompositionImpl.java:453)
       at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.java:702)
       at androidx.compose.runtime.ComposerImpl$CompositionContextImpl.composeInitial$runtime_release(ComposerImpl.java:2951)
       at androidx.compose.runtime.ComposerImpl$CompositionContextImpl.composeInitial$runtime_release(ComposerImpl.java:2951)
       at androidx.compose.runtime.ComposerImpl$CompositionContextImpl.composeInitial$runtime_release(ComposerImpl.java:2951)
       at androidx.compose.runtime.CompositionImpl.setContent(CompositionImpl.java:407)
       at androidx.compose.ui.layout.SubcomposeLayoutState.subcomposeInto(SubcomposeLayoutState.java:257)
       at androidx.compose.ui.layout.SubcomposeLayoutState.access$createMeasurePolicy(SubcomposeLayoutState.java:145)
       at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2.invoke(SubcomposeLayoutState.java:232)
       at androidx.compose.ui.layout.SubcomposeLayoutState$subcompose$2.invoke(SubcomposeLayoutState.java:229)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.withNoObservations(SnapshotStateObserver.java:137)
       at androidx.compose.ui.node.OwnerSnapshotObserver.withNoSnapshotReadObservation$ui_release(OwnerSnapshotObserver.java:49)
       at androidx.compose.ui.node.LayoutNode.withNoSnapshotReadObservation$ui_release(LayoutNode.java:1067)
       at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose(SubcomposeLayoutState.java:229)
       at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose(SubcomposeLayoutState.java:224)
       at androidx.compose.ui.layout.SubcomposeLayoutState.subcompose$ui_release(SubcomposeLayoutState.java:213)
       at androidx.compose.ui.layout.SubcomposeLayoutState$Scope.subcompose(SubcomposeLayoutState.java:445)
       at androidx.compose.foundation.lazy.LazyMeasuredItemProvider.getAndMeasure-ZjPyQlc(LazyMeasuredItemProvider.java:48)
       at androidx.compose.foundation.lazy.LazyListMeasureKt.measureLazyList-nqpP7js(LazyListMeasureKt.java:134)
       at androidx.compose.foundation.lazy.LazyListKt$LazyList$1.invoke-0kLqBqw(LazyListKt.java:151)
       at androidx.compose.foundation.lazy.LazyListKt$LazyList$1.invoke(LazyListKt.java:95)
       at androidx.compose.ui.layout.SubcomposeLayoutState$createMeasurePolicy$1.measure-3p2s80s(SubcomposeLayoutState.java:335)
       at androidx.compose.ui.node.InnerPlaceable.measure-BRTryo0(InnerPlaceable.java:45)
       at androidx.compose.foundation.layout.PaddingValuesModifier.measure-3p2s80s(PaddingValuesModifier.java:416)
       at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.java:37)
       at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(SimpleGraphicsLayerModifier.java:213)
       at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.java:37)
       at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.java:108)
       at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.java:108)
       at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.measure-BRTryo0(DelegatingLayoutNodeWrapper.java:108)
       at androidx.compose.foundation.layout.PaddingValuesModifier.measure-3p2s80s(PaddingValuesModifier.java:416)
       at androidx.compose.ui.node.ModifiedLayoutNode.measure-BRTryo0(ModifiedLayoutNode.java:37)
       at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.java:95)
       at androidx.compose.ui.node.OuterMeasurablePlaceable$remeasure$2.invoke(OuterMeasurablePlaceable.java:94)
       at androidx.compose.runtime.snapshots.Snapshot.enter(Snapshot.java:115)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:1787)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.java:116)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.java:75)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.java:63)
       at androidx.compose.ui.node.OuterMeasurablePlaceable.remeasure-BRTryo0(OuterMeasurablePlaceable.java:94)
       at androidx.compose.ui.node.LayoutNode.remeasure-BRTryo0$ui_release(LayoutNode.java:1192)
       at androidx.compose.ui.node.LayoutNode.remeasure-BRTryo0$ui_release$default(LayoutNode.java:1190)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-0kLqBqw(MeasureAndLayoutDelegate.java:172)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.access$getPostponedMeasureRequests$p(MeasureAndLayoutDelegate.java:39)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.java:212)
       at androidx.compose.ui.platform.AndroidComposeView.measureAndLayout(AndroidComposeView.java:495)
       at androidx.compose.ui.node.LayoutNode.forceRemeasure(LayoutNode.java:1210)
       at androidx.compose.foundation.lazy.LazyListState.onScroll$foundation_release(LazyListState.java:238)
       at androidx.compose.foundation.lazy.LazyListState$scrollableState$1.invoke(LazyListState.java:139)
       at androidx.compose.foundation.lazy.LazyListState$scrollableState$1.invoke(LazyListState.java:139)
       at androidx.compose.foundation.gestures.DefaultScrollableState$scrollScope$1.scrollBy(DefaultScrollableState.java:134)
       at androidx.compose.foundation.gestures.ScrollingLogic.dispatchScroll(ScrollingLogic.java:191)
       at androidx.compose.foundation.gestures.ScrollDraggableState.dragBy(ScrollDraggableState.java:249)
       at androidx.compose.foundation.gestures.DraggableKt$draggable$8$2$2.invokeSuspend(DraggableKt.java:239)
       at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(BaseContinuationImpl.java:33)
       at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.java:106)
       at androidx.compose.ui.platform.AndroidUiDispatcher.performTrampolineDispatch(AndroidUiDispatcher.java:81)
       at androidx.compose.ui.platform.AndroidUiDispatcher.access$performTrampolineDispatch(AndroidUiDispatcher.java:41)
       at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.doFrame(AndroidUiDispatcher.java:68)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1029)
       at android.view.Choreographer.doCallbacks(Choreographer.java:854)
       at android.view.Choreographer.doFrame(Choreographer.java:785)
       at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1016)
       at android.os.Handler.handleCallback(Handler.java:883)
       at android.os.Handler.dispatchMessage(Handler.java:100)
       at android.os.Looper.loop(Looper.java:223)
       at android.app.ActivityThread.main(ActivityThread.java:7562)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Fatal Exception: java.lang.ClassCastException: java.lang.Float cannot be cast to androidx.compose.runtime.z0
crash is not happening on all devices
for now i using Spacer(modifier = Modifier.width/height(size)). But any thing wrong with my code to get this exception?
Copy code
@Composable
fun SpacerHeight(size: Dp) {
    Spacer(modifier = Modifier.height(size))
}
@Composable
fun SpacerWidth(size: Dp) {
    Spacer(modifier = Modifier.width(size))
}