ziv kesten
12/12/2020, 8:13 AMcollectAsLazyPagingItems.
compose versons:
compose_version = ‘1.0.0-alpha07’
nav_compose_version =‘1.0.0-alpha02’ paging_compose_version = ‘1.0.0-alpha02’
The crash is:
com.zk.trackshows E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.zk.trackshows, PID: 22201
java.lang.IllegalArgumentException: Layer is redrawn for LayoutNode in state NeedsRelayout [LayoutNode@56ee45a children: 1 measureBlocks: androidx.compose.ui.layout.SubcomposeLayoutState$createMeasureBlocks$1@772aaf4]
at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:167)
at androidx.compose.ui.node.LayerWrapper.invoke(Unknown Source:3)
at androidx.compose.ui.platform.RenderNodeApi29$record$1$1.invoke(RenderNodeApi29.kt:159)
at androidx.compose.ui.platform.RenderNodeApi29$record$1$1.invoke(Unknown Source:0)
at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:1721)
at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:128)
at androidx.compose.ui.platform.AndroidComposeView.observeLayerModelReads(AndroidComposeView.kt:494)
at androidx.compose.ui.platform.RenderNodeApi29.record(RenderNodeApi29.kt:158)
at androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(RenderNodeLayer.kt:192)
at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.kt:563)
at android.view.View.draw(View.java:22175)
at android.view.View.updateDisplayListIfDirty(View.java:21024)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4441)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4414)
at android.view.View.updateDisplayListIfDirty(View.java:20984)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4441)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4414)
at android.view.View.updateDisplayListIfDirty(View.java:20984)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4441)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4414)
at android.view.View.updateDisplayListIfDirty(View.java:20984)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4441)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4414)
at android.view.View.updateDisplayListIfDirty(View.java:20984)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4441)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4414)
at android.view.View.updateDisplayListIfDirty(View.java:20984)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:582)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:588)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:665)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:4048)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3757)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3026)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1963)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8237)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1239)
at android.view.Choreographer.doCallbacks(Choreographer.java:1041)
at android.view.Choreographer.doFrame(Choreographer.java:953)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1220)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7711)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:516)
The crash does not happen when scrolling slowly.
I am using RemoteMediator with local and remote data sources.v79
12/12/2020, 9:00 AMval count = remember { mutableStateOf(0) }
I mean, what does that even mean? What's wrong with var count = 0
or val count: IntWrapper = IntWrapper(0)
. remember
isn't listed as in import, control-clicking doesn't take me to a declaration. It's wilfully obtuse!Nat Strangerweather
12/12/2020, 9:11 AMShakil Karim
12/12/2020, 10:48 AMcarbaj0
12/12/2020, 2:09 PMjava.lang.NoSuchMethodError: No interface method withRestorableState(Ljava/lang/Object;Lkotlin/jvm/functions/Function2;Landroidx/compose/runtime/Composer;I)V in class Landroidx/compose/runtime/savedinstancestate/RestorableStateHolder; or its super classes (declaration of 'androidx.compose.runtime.savedinstancestate.RestorableStateHolder' appears in /data/app/com.acv.composeland-V85a_e5F918MbctysYPnqQ==/base.apk)
at androidx.navigation.compose.NavHostKt.withRestorableState(NavHost.kt:143)
at androidx.navigation.compose.NavHostKt.access$withRestorableState(Unknown Source:0)
at androidx.navigation.compose.NavHostKt$NavHost$5.invoke(NavHost.kt:130)
at androidx.navigation.compose.NavHostKt$NavHost$5.invoke(Unknown Source:10)
at androidx.compose.runtime.internal.ComposableLambda.invoke(ComposableLambda.kt:146)
at androidx.compose.runtime.internal.ComposableLambda.invoke(Unknown Source:10)
at androidx.compose.runtime.AmbientKt.Providers(Ambient.kt:187)
at androidx.navigation.compose.NavHostKt.NavHost(NavHost.kt:126)
at androidx.navigation.compose.NavHostKt$NavHost$6.invoke(Unknown Source:8)
at androidx.navigation.compose.NavHostKt$NavHost$6.invoke(Unknown Source:10)
at androidx.compose.runtime.RecomposeScope.compose(Composer.kt:286)
Adriano Celentano
12/12/2020, 3:18 PMLeon K
12/12/2020, 5:57 PMrobnik
12/12/2020, 6:56 PMrobnik
12/13/2020, 3:31 AMLazyColumnFor
does not remember things when items are removed and shifted. I heard that key(...)
provides a workaround. I tried this, but it didn't work:
LazyColumnFor(items = nums) { listNum ->
key(listNum) {
val r = remember { Random.nextInt(300) }
Text("Num: $listNum, remembered: $r")
}
}
nums
is mutable state. When I remove the first item, all the remembered numbers change.Kshitij Patil
12/13/2020, 4:52 AMsnapToIndex
APIs for LazyColumn are added in alpha08
? I'm using alpha07
and I do get behavior of remembering scroll position on putting app background but it's not working when I switch the tab and come back (I'm using multi backstack Navigation) so I was expecting it to workzsperske
12/13/2020, 5:39 AMSpikey Sanju
12/13/2020, 7:34 AMval username = remember { mutableStateOf(TextFieldValue()) }
TextField(
modifier = Modifier.fillMaxWidth().padding(16.dp, 0.dp, 16.dp, 0.dp)
.constrainAs(et_username) {
top.linkTo(title.bottom, margin = 30.dp)
},
label = { Text(text = "Username") },
leadingIcon = { Icon(Icons.Outlined.Person) },
textStyle = typography.subtitle1,
backgroundColor = MaterialTheme.colors.background,
value = username.value,
onValueChange = { username.value = it }
)
ziv kesten
12/13/2020, 9:32 AMe: java.lang.NoSuchMethodError: e: java.lang.NoSuchMethodError:
'org.jetbrains.kotlin.descriptors.DescriptorVisibility org.jetbrains.kotlin.descriptors.ClassConstructorDescriptor.getVisibility()'
compose versons:
compose_version = ‘1.0.0-alpha08’
nav_compose_version =‘1.0.0-alpha02’
paging_compose_version = ‘1.0.0-alpha02’
kotlin version = ‘1.4.20’
Tried invalidating caches, restart, restart AS, restart Whole machine.tieskedh
12/13/2020, 2:59 PMRow {
Text(
"h4 text",
style = MaterialTheme.typography.h4,
)
Text("my icon")
}
I saw that fontsize had a lineHeight, and a baselineshift.
The thing I don't get is that the baselineshift is a multiplier.
How can I compute the top with it?
Or is there some other way?robnik
12/13/2020, 3:01 PMNat Strangerweather
12/13/2020, 5:26 PMobserveAsState
comes up as Unresolved Reference. Any ideas? I tried importing import androidx.compose.runtime.livedata.observeAsState
but livedata
is Unresolved...Piotr
12/14/2020, 2:29 PMKshitij Patil
12/14/2020, 9:27 PMonTouchEvent
to handle some gestures doesn't allow gestures when used in a Composable using AndroidView
. It used to work with compose alpha04
(the last time I checked this Custom View). Currently I'm using alpha07
and it's not working anymore. I tried putting that View in a xml file and inflating that layout instead which also didn't work. When I write entire screen in xml and use this View, everything works fine.Sam
12/14/2020, 10:05 PMlazyGridFor
that could have multiple columns that don’t require even-height rows, but i’d settle for fully rendering if it’s currently possible https://user-images.githubusercontent.com/29085/56487936-b3bc2c00-6491-11e9-8493-bb89c4f00a92.png▾
gbaldeck
12/15/2020, 1:48 AMPiotr
12/15/2020, 2:07 PMandroid:includeFontPadding="false"
I have a problem with font that, I believe, could be solved by using something like that, doing modifier.padding didnt work (border added to show whats going on):Vincent tiensi
12/15/2020, 2:10 PMval state = viewModel.state.observeAsState().value ?: return
val scaffoldState = rememberScaffoldState()
when (state.drawerEvent?.consume()) {
DrawerState.OPEN -> {
scaffoldState.drawerState.open()
}
DrawerState.CLOSE -> {
scaffoldState.drawerState.close()
}
}
Scaffold(scaffoldState = scaffoldState)
robnik
12/15/2020, 6:56 PMBitmap.asImageBitmap(): ImageBitmap
that I needed. It's not listed in either class's reference page. How is one supposed to find a function like that?Nat Strangerweather
12/15/2020, 9:14 PMlaith
12/15/2020, 9:22 PMVinay Gaba
12/15/2020, 10:07 PMrobnik
12/15/2020, 10:37 PM@Composable fun Things(model: MyViewModel) {
val mutableThing = model.thing
mutableThing.addChangeListener { recomposeThisStuff() }
Text("${mutableThing.size} ...")
So "model.thing" may always be the same reference/object. But it changes internally.Dominaezzz
12/16/2020, 12:09 AMInlineTextContent.children
.Luis Daivid
12/16/2020, 8:41 AMallan.conda
12/16/2020, 8:48 AMallan.conda
12/16/2020, 8:48 AMLuis Daivid
12/16/2020, 9:09 AMallan.conda
12/16/2020, 9:11 AMLuis Daivid
12/16/2020, 9:13 AMrobnik
12/16/2020, 11:51 AMModifier.clip(myShape)
where myShape
is a GenericShape { ... }
. In my preview I have a Slider that changes the width of the clip shape from 0 to 100%.Luis Daivid
12/16/2020, 11:55 AMrobnik
12/16/2020, 12:04 PMval myClip = GenericShape { size ->
val right = size.width * fraction
lineTo(right, 0f)
lineTo(right, size.height)
lineTo(0f, size.height)
close()
}
And fraction is a float from state, getting moved by a slider.Luis Daivid
12/16/2020, 12:04 PMNader Jawad
12/16/2020, 6:33 PMGenericShape
will work here as a parameter to the clip modifier, however, because this is a rectangle, using RectangleShape
to provide the clipping bounds will be more efficient as it would avoid software rasterization of pathsrobnik
12/16/2020, 8:58 PMRectangleShape
I see is a val
. How do I use it? How do I give it a narrower width so that it actually clips the thing I'm trying to clip/crop?Nader Jawad
12/16/2020, 8:58 PMRectangleShape
robnik
12/16/2020, 9:03 PMShape
and return an Outline
that is a Rectangle
instead of a Generic
, and get that performance benefit. Thanks!Luis Daivid
12/17/2020, 12:48 PMallan.conda
12/17/2020, 2:16 PM