Administrator
Administrator
Published on 2025-03-20 / 6 Visits
0
0

注解Annotation

Composable

可组合元素/页面

@Composable
fun ProfileScreen() {
    val nav = localNavController.current
    var i1 by rememberSaveable { mutableStateOf("") }

    Column(modifier = Modifier
        .windowInsetsPadding(WindowInsets.systemBars)
        .fillMaxWidth()
        .background(Color.White)
    ) {
        Text("我的")
    }
}

Preview预览

在开发IDE中实时预览查看渲染效果。写了Preview后,在android studio中点击右上角的Split

@Preview(showBackground = true, showSystemUi = true)
@Composable //只能在Composable函数使用Preview,预览一个组件/页面
fun HomeScreen() {
    //不能使用navigation,否则报错render problem
//    val nav = localNavController.current
    var i1 by rememberSaveable { mutableStateOf("") }
    Column(modifier = Modifier.windowInsetsPadding(WindowInsets.systemBars)) {
        Text("首页", color = Color(0f,0f,255f,.2f), fontWeight = FontWeight.Bold)

        TextField(value = i1, onValueChange = { i1 = it })
        Button(onClick = {
//            nav.navigate("profile")
        }) {
            Text("跳转到个人中心")
        }
    }
}

Immutable

表示class或数据结构的结构不可变,帮助编绎器进行性能优化,避免不必要的重组。当属性是val声明时,其值不可变化时用这个注解

@Immutable
data class User(val name: String, val age: Int)


@Immutable
class Person(var name: String, var age: Int)


Comment