如何在Jetpack Compose中获取Context (Kotlin)
大家好!我刚开始学习Jetpack Compose,立刻遇到了一个问题。在旧的XML方法中,我习惯通过`this`或`getApplicationContext()`获取Context,但在Compose中这不起作用。我需要获取Context来,例如,显示`Toast`、访问资源(`strings.xml`、颜色)或系统服务如`ConnectivityManager`。
以下是我的代码示例,无法编译:
```kotlin
@Composable
fun MyScreen() {
// 尝试像往常一样获取Context
val context = this // 错误:'this'不是Context
// 或者这样:
val context = getApplicationContext() // 错误:函数未定义
Button(onClick = {
Toast.makeText(context, "已点击!", Toast.LENGTH_SHORT).show()
}) {
Text("显示Toast")
}
}
```
我明白Compose是声明式UI,访问Context应该以不同方式组织。但具体怎么做?是否需要将Context作为参数传递?还是有其他方法?