A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Desarrollando el Navbar

17/26
Recursos

Aportes 2

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

No es necesario duplicar codigo y hacer if-else en el CustomAppBar.

Esto hace exactamente lo mismo:

@Composable
fun CustomAppBar(title: String = "", navigationIcon: ImageVector? = null, navigationAction: () -> Unit? = {}) {
    TopAppBar(
        title = { Text(text = title) },
        navigationIcon =
        navigationIcon?.let {
            {
                IconButton(onClick = { navigationAction() }) {
                    Icon(navigationIcon, contentDescription = null)
                }
            }
        }
    )
}

Reto: FeedScreen

package tech.yeswecode.coffe4coders.screens

import android.service.quicksettings.Tile
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.material.*
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.navigation.NavController
import androidx.navigation.compose.rememberNavController
import tech.yeswecode.coffe4coders.components.BodyText
import tech.yeswecode.coffe4coders.components.CountryISO
import tech.yeswecode.coffe4coders.components.CustompAppbar
import tech.yeswecode.coffe4coders.components.ProductCard
import tech.yeswecode.coffe4coders.ui.theme.Coffe4codersTheme
import tech.yeswecode.coffe4coders.components.TitleText as TitleText

@Composable
fun FeedScreen(navController: NavController){
    val list = listOf<CountryISO>(
        CountryISO.COL, CountryISO.CRI, CountryISO.NIC, CountryISO.BRA
    )
    Coffe4codersTheme() {
        Scaffold(
            topBar = {
                CustompAppbar(navigationIcon = Icons.Filled.ArrowBack){
                    navController.navigate("feed"){
                        popUpTo("feed")
                    }
                }
            },
            content = {
                Surface(color = MaterialTheme.colors.background)
                {
                    LazyColumn(
                        verticalArrangement = Arrangement.spacedBy(8.dp)
                    ){
                        item {
                            Column(
                                modifier = Modifier.padding(8.dp)
                            ) {
                                TitleText(title = "Bienvenido")
                                BodyText(body = "sti贸n de identidades y accesos (IAM, por sus siglas en ingl茅s) ha sido durante mucho tiempo un campo de pruebas clave en las carreras de los responsables de seguridad, con muchas decisiones decisivas sobre la implantaci贸n de tecnolog铆as de identidad. Gara")
                            }
                        }
                        items(list){
                                coCuntry -> ProductCard(
                            name = "Cafe de Colombia",
                            summary = "Cafe de las monta帽as",
                            price = 35.1,
                            currency = "USD",
                            country = coCuntry
                        ){
                            navController.navigate("detail/${coCuntry.iso}"){
                                launchSingleTop = true
                            }
                        }
                        }
                    }
                }
            }
        )
    }
}

@Preview(
    showBackground = true
)
@Composable
fun FeedScreenPreview(){
    val navController = rememberNavController()
    FeedScreen(navController)
}