不想起新名字了(
1. Compose Modifier修饰顺序
开始用compose,发现padding加的位置不一样效果也不一样,大惊。官方视频讲得很好:传送门
平常用的话就想象一个框,然后从外往里加东西就好。比如.padding.clip.background.padding,就是先加一圈padding,然后剪成圆角,再在剪完的图形里加个背景,最后加一圈内边距。范围越来越小,像这样。
2. kotlin三目表达式
突然想用c里的 ?: 但kotlin里没有,只能 val max = if (a > b) a else b
3. Modifier.toggleable()
可以自定义clickable的东西!
4. it的作用
Kotlin 的 lambda 表达式允许在只有一个参数的情况下,使用 it
隐式地引用该参数。比如(checked: Boolean) -> Unit)中checked就可以用it代替。
5. android app切换页面状态丢失
val modifier = remember(checked) { if (checked != null) { Modifier.toggleable( ... ) } else Modifier
例如这段代码,如果从其他页面切换回来,composable重组导致checked为null,Modifier修饰的这个东西就点不了了!
6. amend commit
出于一些原因攒了一堆commit没push,现在需要改其中一个。方法:
git rebase -i HEAD~{$num} //num为以最近commit为1,数到要改的commit的数字
(pick -> edit) //然后它会跳出一个界面,列了从要改到现在所有的commit,把要改的commit前的pick改成edit
(进行操作,如果选了多个commit会让你一个一个操作)
git add .
git rebase –continue
7. LaunchedEffect composable会自己重组,每次重组都会执行composable的内容。如果只希望某些语句被执行一次,那么就将它用LaunchedEffect包起来。可以向LaunchedEffect中传参数,意思是这个参数变的时候重新计算。和remember类似,据我观察区别是LaunchedEffect没有返回值。 标签:LaunchedEffect,checked,padding,上班,git,commit,Modifier From: https://www.cnblogs.com/capterlliar/p/18398583