此代碼示例中的“提供”語法是什么,它有什么作用?
LocalContentAlpha provides ContentAlpha.medium
它似乎不是標準的 kotlin 關鍵字,而且我在谷歌上搜索“kotlin 提供關鍵字”或“jetpack compose提供”等查詢時運氣不佳。
這顯示在Jetpack Compose代碼實驗室,完整代碼段如下。
@Composable
fun PhotographerCard() {
Column {
Text("Alfred Sisley", fontWeight = FontWeight.Bold)
// LocalContentAlpha is defining opacity level of its children
CompositionLocalProvider(LocalContentAlpha provides ContentAlpha.medium) {
Text("3 minutes ago", style = MaterialTheme.typography.body2)
}
}
}
@Preview
@Composable
fun PhotographerCardPreview() {
LayoutsCodelabTheme {
PhotographerCard()
}
}
uj5u.com熱心網友回復:
這是一個中綴函式的例子:
用中綴關鍵字標記的函式也可以使用中綴符號呼叫(省略呼叫的點和括號)。
從方法檔案中infix關鍵字的存在可以看出。
因此該方法可以正常呼叫為LocalContentAlpha.provides(ContentAlpha.medium),但中綴表示法允許洗掉那些額外的語法字符。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/388568.html
標籤:安卓 科特林 android-jetpack-compose
