//Faris Naufal Priatna //202310715123 package com.example.kartunama import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.enableEdgeToEdge import androidx.compose.foundation.Image import androidx.compose.foundation.background import androidx.compose.foundation.layout.* import androidx.compose.foundation.shape.CircleShape import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Call import androidx.compose.material.icons.filled.Email import androidx.compose.material.icons.filled.Share import androidx.compose.material3.* import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.example.kartunama.ui.theme.KartuNamaTheme class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() setContent { KartuNamaTheme { Surface( modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.surfaceVariant ) { BusinessCard() } } } } } @Composable fun BusinessCard() { Box( modifier = Modifier .fillMaxSize() .background(MaterialTheme.colorScheme.surfaceVariant) ) { // () Column( modifier = Modifier .align(Alignment.Center) .padding(16.dp), horizontalAlignment = Alignment.CenterHorizontally ) { Image( painter = painterResource(id = R.drawable.gambarfaris), contentDescription = "Logo", modifier = Modifier .size(120.dp) .clip(CircleShape), contentScale = ContentScale.Crop ) Spacer(modifier = Modifier.height(16.dp)) Text( text = "Faris Naufal Priatna", fontSize = 30.sp, fontWeight = FontWeight.Bold ) Text( text = "University Of Ubhara Jaya", fontSize = 16.sp, color = MaterialTheme.colorScheme.primary ) } // (Kontak) Column( modifier = Modifier .align(Alignment.BottomCenter) .padding(bottom = 32.dp), horizontalAlignment = Alignment.CenterHorizontally ) { ContactRow(icon = Icons.Filled.Call, text = "+62 857 1115 6094") ContactRow(icon = Icons.Filled.Share, text = "@Farisnaufal") ContactRow(icon = Icons.Filled.Email, text = "202310715123@ubharajaya.ac.id") } } } @Composable fun ContactRow(icon: androidx.compose.ui.graphics.vector.ImageVector, text: String) { Row( modifier = Modifier .padding(vertical = 4.dp), verticalAlignment = Alignment.CenterVertically ) { Icon( imageVector = icon, contentDescription = null, modifier = Modifier .padding(end = 8.dp) .size(20.dp) ) Text(text = text, fontSize = 14.sp) } } @Preview(showBackground = true) @Composable fun BusinessCardPreview() { KartuNamaTheme { BusinessCard() } }