From e3705bab0fbf3529fb26fe7ca3f1f0e573627184 Mon Sep 17 00:00:00 2001 From: mendejumrukovski Date: Tue, 7 Mar 2023 01:46:07 +0100 Subject: [PATCH] Create TopMenuItem composable --- .../jumrukovski/quotescompose/MainActivity.kt | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/jumrukovski/quotescompose/MainActivity.kt b/app/src/main/java/com/jumrukovski/quotescompose/MainActivity.kt index 79f9983..dfd285c 100644 --- a/app/src/main/java/com/jumrukovski/quotescompose/MainActivity.kt +++ b/app/src/main/java/com/jumrukovski/quotescompose/MainActivity.kt @@ -37,19 +37,28 @@ class MainActivity : ComponentActivity() { actionIconContentColor = MaterialTheme.colorScheme.PrimaryTextColor ), actions = { - topMenuItems.forEach { - IconButton(onClick = { onActionClick(it) }) { - Icon( - painter = painterResource(id = R.drawable.baseline_search_24), - contentDescription = stringResource(id = R.string.action_search), - tint = MaterialTheme.colorScheme.onSurface - ) - } + topMenuItems.forEach { topMenuItem -> + TopMenuItem(topMenuItem = topMenuItem, onActionClick = { onActionClick(it) }) } } ) } + @Composable + private fun TopMenuItem( + topMenuItem: MainActivityMenuItem, + onActionClick: (MainActivityMenuItem) -> Unit = {} + ) { + IconButton(onClick = { onActionClick(topMenuItem) }) { + Icon( + painter = painterResource(id = topMenuItem.drawable), + contentDescription = topMenuItem.title, + tint = MaterialTheme.colorScheme.onSurface + ) + } + } + + //todo do it differently data class MainActivityMenuItem(val title: String, @DrawableRes val drawable: Int) @Composable