小编Tyg*_*ris的帖子

编写 foreach 循环:@Composable 调用只能在 @Composable 函数的上下文中发生

我正在尝试迭代List对象,对于每个对象我想显示一个可组合的卡片。问题是您无法从list.forEach{} 括号内调用可组合函数。

代码:

@Composable
fun Greeting(listy : List<SomethingForLater>) {
  LazyColumn {
    listy.forEach {
        //error here
        testCard(somethingForLater = it)
        }

    }
}
@Composable
fun testCard(somethingForLater: SomethingForLater){
val theme = MaterialTheme
Card(shape = theme.shapes.small,backgroundColor = theme.colors.secondary){
    Column {
        Row {
            Text(
                text = somethingForLater.task,
                modifier = Modifier.padding(start = 5.dp,
                    top = 3.dp,bottom = 3.dp
                ),
                fontSize = 18.sp,
                fontWeight = FontWeight.Bold,

                )
        }
    }
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-jetpack-compose

10
推荐指数
2
解决办法
1万
查看次数

Compose Appbar 与活动内容重叠

看图片,卡片与应用栏重叠

我仍在学习撰写。在我构建的这个原型中,我的包含卡片视图的列(在本例中为 1 个虚拟卡)与应用程序栏重叠。我也尝试过使用脚手架,结果相同

这是卡代码:

@Composable
fun DiaryCard(){
val bs = "filler text,strings,anything "+
        "jadsjjadj adsnjasjd d saasd" +" sadsad asdasd adsasda" +
        "sasdasdas dsa d"



   Column {
   
   Spacer(modifier = Modifier.padding(top = 6.dp))
   Card(modifier = Modifier
       .fillMaxWidth()
       .padding(13.dp),
       shape = MaterialTheme.shapes.small,
       elevation = 5.dp, backgroundColor = Color.White){


       Row(modifier = Modifier.padding(bottom = 2.dp)){

           Text(text = "29 Sept. 2019", modifier = Modifier
               .fillMaxWidth(0.75F)
               .padding(start = 1.5.dp),color = Color.Black)



       }
       Divider()
       Spacer(modifier = Modifier.padding(bottom = 3.dp,top = 2.dp))
       Column(modifier = Modifier.fillMaxWidth()) {
           Text(text = …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack-compose

3
推荐指数
1
解决办法
3479
查看次数

标签 统计

android ×2

android-jetpack-compose ×2

kotlin ×1