fun createListItem(itemIndex: Int) {
Padding(left = 8.dp, right = 8.dp, top = 8.dp, bottom = 8.dp) {
FlexRow(crossAxisAlignment = CrossAxisAlignment.Center) {
expanded(1.0f) {
Text("Item $itemIndex")
}
inflexible {
Button(
"Button $itemIndex",
style = ContainedButtonStyle(),
onClick = {
Toast.makeText(
this@MainActivity,
"Item name $itemIndex",
Toast.LENGTH_SHORT
).show()
})
}
}
}
}
_
私は通常の方法でトーストをしようとします。しかし、私は私がたくさんの倍数の源を試したが失敗したというエラーがありました。
定義ambientContext
を定義してコンテキストにアクセスできます。
例:
val context = +ambient(ContextAmbient)
_
私はあなたが決してToast
通常の方法を示すと思います。 Jetpack Composeは、カスタムKotlin
コンパイラプラグインを使用して、これらのコンポジット機能をアプリのUI要素に変換します。たとえば、Text()
関数はCompose UI library
で定義されています。ジェットパックの作成は非常に初期の開発段階にあります。 Jetpackのすべてのレポジーがサンプルと統合テストチェックの下のテストチェックを見ることができます
https://android.googlesource.com/platform/frameworks/support//refs/heads/androidx-master-dev/ui
ジェットパックのための資料デモこのリンクをチェックする
Jetpackのコンテキストを作成するには:
val context = ContextAmbient.current
_
0.1.0-DEV14に取り組んでいます
その使用方法[〜#〜]トースト[〜#〜]:
@Composable
fun cardViewImplementer(item: Int) {
val context = ContextAmbient.current
Card(
shape = RoundedCornerShape(10.dp),
modifier = Modifier.padding(10.dp)
) {
Box(
modifier = Modifier
.fillMaxWidth()
.drawShadow(5.dp)
.clickable(onClick = {
Toast.makeText(context, "Clicked $item", Toast.LENGTH_SHORT).show()
}), children = {
})
}
_
にアクセスするにはリソース:
Text("Read this string: "+context.getString(R.string.name))
_