• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package com.airbnb.lottie.sample.compose.composables
2 
3 import androidx.compose.foundation.Image
4 import androidx.compose.foundation.background
5 import androidx.compose.foundation.layout.Row
6 import androidx.compose.foundation.layout.fillMaxWidth
7 import androidx.compose.foundation.layout.padding
8 import androidx.compose.foundation.layout.size
9 import androidx.compose.material.Surface
10 import androidx.compose.material.Text
11 import androidx.compose.runtime.Composable
12 import androidx.compose.ui.Alignment
13 import androidx.compose.ui.Modifier
14 import androidx.compose.ui.graphics.Color
15 import androidx.compose.ui.text.style.TextOverflow
16 import androidx.compose.ui.unit.dp
17 import androidx.compose.ui.unit.sp
18 import coil.compose.rememberAsyncImagePainter
19 
20 @Composable
AnimationRownull21 fun AnimationRow(
22     title: String,
23     previewUrl: String,
24     previewBackgroundColor: Color,
25     onClick: () -> Unit
26 ) {
27     Surface(
28         onClick = onClick,
29     ) {
30         Row(
31             verticalAlignment = Alignment.CenterVertically,
32             modifier = Modifier
33                 .padding(16.dp)
34                 .fillMaxWidth()
35         ) {
36             Image(
37                 painter = rememberAsyncImagePainter(previewUrl),
38                 modifier = Modifier
39                     .padding(end = 16.dp)
40                     .size(40.dp)
41                     .background(color = previewBackgroundColor),
42                 contentDescription = null
43             )
44             Text(
45                 title,
46                 fontSize = 16.sp,
47                 overflow = TextOverflow.Ellipsis
48             )
49         }
50 
51     }
52 }