From a14484583da05263fff85c71be393f652e5fb5d8 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Fri, 25 Sep 2020 02:25:47 +0530 Subject: [PATCH] app: use ConstraintLayout for laying out LobstersItem Signed-off-by: Harsh Shandilya --- .../dev/msfjarvis/lobsters/ui/LobstersItem.kt | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/dev/msfjarvis/lobsters/ui/LobstersItem.kt b/app/src/main/java/dev/msfjarvis/lobsters/ui/LobstersItem.kt index d57ec967..f337b6d5 100644 --- a/app/src/main/java/dev/msfjarvis/lobsters/ui/LobstersItem.kt +++ b/app/src/main/java/dev/msfjarvis/lobsters/ui/LobstersItem.kt @@ -6,7 +6,7 @@ import androidx.compose.foundation.background import androidx.compose.foundation.border import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.ConstraintLayout import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.LazyColumnFor @@ -33,15 +33,21 @@ fun LazyItemScope.LobstersItem( .fillParentMaxWidth() .clickable(onClick = { onClick.invoke(post) }), text = { - Column { + ConstraintLayout { + val (title, tags, submitter) = createRefs() Text( text = post.title, color = Color(0xFF7395D9), fontWeight = FontWeight.Bold, - modifier = Modifier.padding(top = 4.dp) + modifier = Modifier.padding(top = 4.dp).constrainAs(title) { + top.linkTo(parent.top) + start.linkTo(parent.start) + } ) Row( - modifier = Modifier.padding(vertical = 8.dp), + modifier = Modifier.padding(vertical = 8.dp).constrainAs(tags) { + top.linkTo(title.bottom) + }, horizontalArrangement = Arrangement.spacedBy(8.dp), ) { post.tags.forEach { tag -> @@ -57,7 +63,9 @@ fun LazyItemScope.LobstersItem( } Text( text = "submitted by ${post.submitterUser.username}", - modifier = Modifier.padding(bottom = 4.dp), + modifier = Modifier.padding(bottom = 4.dp).constrainAs(submitter) { + top.linkTo(tags.bottom) + }, ) } }