// GroceryItemsList Example // Source code file: MainActivity.kt package it372.ssmith.groceryitemslist import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.enableEdgeToEdge import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding import androidx.compose.material3.Button import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import it372.ssmith.groceryitemslist.ui.theme.GroceryItemsListTheme class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() setContent { MainLayout( ) } } } @Composable fun MainLayout( ) { val items = listOf( GroceryItem("Cabbage", 34567, price = 2.59), GroceryItem("Tomatos", 46576, price = 3.55), GroceryItem("Onions", 76543, price = 2.58) ) var textContents = remember { mutableStateOf("") } Column(modifier = Modifier.padding(all = 40.dp)) { Button( onClick = { var output = "" for(item in items) { output += item.toString( ) + "\n" } textContents.value = output }, content = { Text("Show Grocery Items") } ) Text(text = textContents.value) } } @Preview(showBackground = true) @Composable fun MainLayoutPreview() { MainLayout( ) }