WelcomeScreen
Kotlin
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.shape.CircleShape
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.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.ContentScale
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 coil3.compose.AsyncImage
@Preview(showBackground = true, backgroundColor = 0xFF000000)
@Composable
fun WelcomeScreen() {
Column(
modifier = Modifier
.fillMaxSize()
.background(Color.Black)
.padding(horizontal = 28.dp),
horizontalAlignment = Alignment.CenterHorizontally
) {
Spacer(modifier = Modifier.height(60.dp))
// Logo
AsyncImage(
model = "https://res.cloudinary.com/wxytzoo1/image/upload/v1788918988/Mallucupidlogo.png",
contentDescription = "Mallu Cupid Logo",
modifier = Modifier
.size(160.dp)
.clip(CircleShape),
contentScale = ContentScale.Fit
)
Spacer(modifier = Modifier.height(40.dp))
// App Name
Text(
text = "Welcome to Mallu Cupid",
color = Color.White,
fontSize = 26.sp,
fontWeight = FontWeight.SemiBold,
textAlign = TextAlign.Center
)
Spacer(modifier = Modifier.height(12.dp))
// Tagline
Text(
text = "Meet someone special",
color = Color(0xFF8696A0),
fontSize = 16.sp,
textAlign = TextAlign.Center
)
Spacer(modifier = Modifier.height(32.dp))
// Privacy text
Text(
text = "Read our Privacy Policy. Tap \"Agree and continue\" to accept our Terms of Service.",
color = Color(0xFF8696A0),
fontSize = 14.sp,
textAlign = TextAlign.Center,
lineHeight = 20.sp
)
Spacer(modifier = Modifier.weight(1f))
// Button
Button(
onClick = { },
modifier = Modifier
.fillMaxWidth()
.height(52.dp),
shape = RoundedCornerShape(26.dp),
colors = ButtonDefaults.buttonColors(
containerColor = Color(0xFF25D366),
contentColor = Color.Black
)
) {
Text(
text = "Agree and continue",
fontSize = 16.sp,
fontWeight = FontWeight.Medium
)
}
Spacer(modifier = Modifier.height(40.dp))
}
}