Upload files to "Tugas HelloWord"

This commit is contained in:
202310715066 NABILA SUWANDIRA 2025-10-16 16:19:41 +07:00
parent b1bf405e69
commit 2be97be605

View File

@ -1,26 +1,62 @@
package com.example.hellobila package com.example.sorting
import android.os.Bundle import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity import androidx.compose.foundation.layout.Column
import androidx.core.view.ViewCompat import androidx.compose.foundation.layout.fillMaxSize
import androidx.core.view.WindowInsetsCompat import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.*
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import com.example.sorting.ui.theme.SortingTheme
class MainActivity : AppCompatActivity() { class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
// Mengaktifkan tampilan edge-to-edge agar aplikasi memenuhi seluruh layar
enableEdgeToEdge() enableEdgeToEdge()
setContent {
SortingTheme {
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background
) {
SortIntarray()
}
}
}
}
}
// Menghubungkan layout XML (activity_main.xml) dengan activity ini @Composable
setContentView(R.layout.activity_main) fun SortIntarray() {
// Angka yang mau diurutkan
val numbers = listOf(1, 7, 99, 46, 90, 600, 98, 76, 52)
// Menambahkan padding pada layout utama agar tidak tertimpa oleh status bar atau navigation bar // State sebelum dan sesudah
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets -> var before by remember { mutableStateOf("") }
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) var after by remember { mutableStateOf("") }
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets // Proses sortir
LaunchedEffect(Unit) {
before = numbers.joinToString(", ")
val sorted = numbers.sorted()
after = sorted.joinToString(", ")
}
Column {
Text(text = "Sebelum diurutkan: $before")
Text(text = "Sesudah diurutkan: $after")
} }
} }
@Preview(showBackground = true)
@Composable
fun PreviewSortIntarray() {
SortingTheme {
SortIntarray()
}
} }