name-card
This commit is contained in:
		
						commit
						cc504c458e
					
				
							
								
								
									
										94
									
								
								app/src/main/java/com/example/helloworld2/MainActivity.kt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								app/src/main/java/com/example/helloworld2/MainActivity.kt
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,94 @@
 | 
			
		||||
package com.example.helloworld2
 | 
			
		||||
 | 
			
		||||
import android.os.Bundle
 | 
			
		||||
import androidx.activity.ComponentActivity
 | 
			
		||||
import androidx.activity.compose.setContent
 | 
			
		||||
import androidx.activity.enableEdgeToEdge
 | 
			
		||||
import androidx.compose.foundation.background
 | 
			
		||||
import androidx.compose.foundation.layout.*
 | 
			
		||||
import androidx.compose.foundation.shape.RoundedCornerShape
 | 
			
		||||
import androidx.compose.material3.*
 | 
			
		||||
import androidx.compose.runtime.Composable
 | 
			
		||||
import androidx.compose.ui.Alignment
 | 
			
		||||
import androidx.compose.ui.Modifier
 | 
			
		||||
import androidx.compose.ui.graphics.Brush
 | 
			
		||||
import androidx.compose.ui.graphics.Color
 | 
			
		||||
import androidx.compose.ui.text.font.FontWeight
 | 
			
		||||
import androidx.compose.ui.text.style.TextAlign
 | 
			
		||||
import androidx.compose.ui.tooling.preview.Preview
 | 
			
		||||
import androidx.compose.ui.unit.dp
 | 
			
		||||
import androidx.compose.ui.unit.sp
 | 
			
		||||
import com.example.helloworld2.ui.theme.HelloWorld2Theme
 | 
			
		||||
 | 
			
		||||
class MainActivity : ComponentActivity() {
 | 
			
		||||
    override fun onCreate(savedInstanceState: Bundle?) {
 | 
			
		||||
        super.onCreate(savedInstanceState)
 | 
			
		||||
        enableEdgeToEdge()
 | 
			
		||||
        setContent {
 | 
			
		||||
            HelloWorld2Theme {
 | 
			
		||||
                Surface(
 | 
			
		||||
                    modifier = Modifier.fillMaxSize(),
 | 
			
		||||
                    color = MaterialTheme.colorScheme.background
 | 
			
		||||
                ) {
 | 
			
		||||
                    GreetingScreen(name = "Indris Alpasela")
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@Composable
 | 
			
		||||
fun GreetingScreen(name: String) {
 | 
			
		||||
    // Background gradasi warna
 | 
			
		||||
    Box(
 | 
			
		||||
        modifier = Modifier
 | 
			
		||||
            .fillMaxSize()
 | 
			
		||||
            .background(
 | 
			
		||||
                Brush.verticalGradient(
 | 
			
		||||
                    colors = listOf(Color(0xFF0D47A1), Color(0xFF1976D2), Color(0xFF42A5F5))
 | 
			
		||||
                )
 | 
			
		||||
            ),
 | 
			
		||||
        contentAlignment = Alignment.Center
 | 
			
		||||
    ) {
 | 
			
		||||
        // Card di tengah
 | 
			
		||||
        Card(
 | 
			
		||||
            modifier = Modifier
 | 
			
		||||
                .padding(20.dp)
 | 
			
		||||
                .fillMaxWidth()
 | 
			
		||||
                .wrapContentHeight(),
 | 
			
		||||
            colors = CardDefaults.cardColors(containerColor = Color.White.copy(alpha = 0.95f)),
 | 
			
		||||
            shape = RoundedCornerShape(24.dp),
 | 
			
		||||
            elevation = CardDefaults.cardElevation(12.dp)
 | 
			
		||||
        ) {
 | 
			
		||||
            Column(
 | 
			
		||||
                modifier = Modifier
 | 
			
		||||
                    .padding(24.dp)
 | 
			
		||||
                    .fillMaxWidth(),
 | 
			
		||||
                horizontalAlignment = Alignment.CenterHorizontally
 | 
			
		||||
            ) {
 | 
			
		||||
                Text(
 | 
			
		||||
                    text = "Hello, $name 👋",
 | 
			
		||||
                    fontSize = 28.sp,
 | 
			
		||||
                    fontWeight = FontWeight.Bold,
 | 
			
		||||
                    color = Color(0xFF0D47A1),
 | 
			
		||||
                    textAlign = TextAlign.Center
 | 
			
		||||
                )
 | 
			
		||||
                Spacer(modifier = Modifier.height(12.dp))
 | 
			
		||||
                Text(
 | 
			
		||||
                    text = "NPM : 202310715200",
 | 
			
		||||
                    fontSize = 16.sp,
 | 
			
		||||
                    color = Color.Gray,
 | 
			
		||||
                    textAlign = TextAlign.Center
 | 
			
		||||
                )
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@Preview(showBackground = true, showSystemUi = true)
 | 
			
		||||
@Composable
 | 
			
		||||
fun GreetingPreview() {
 | 
			
		||||
    HelloWorld2Theme {
 | 
			
		||||
        GreetingScreen("Android Dev")
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user