Composable Function Dasar
Penjelasan
Fungsi Kotlin ditandai @Composable bisa "menggambar" UI — konvensinya namanya diawali huruf kapital (PascalCase, mirip komponen React), TIDAK mengembalikan nilai (return Unit implisit), dan cuma bisa dipanggil dari dalam Composable lain (atau dari setContent { } di Activity).
Contoh Konsep
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
@Composable
fun Sapa(nama: String) {
Text(text = "Halo, $nama!")
}
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Sapa(nama = "CompileDaily")
}
}
}
Praktikum
Buat Composable KartuProduk(nama: String, harga: Int) yang menampilkan Text berisi nama dan harga produk dalam satu string, mis. "$nama - Rp $harga".
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Composable function TIDAK BISA dipanggil dari fungsi Kotlin BIASA (non-Composable) — kalau kamu mencoba memanggil Text(...) di dalam fungsi normal, compiler akan error "@Composable invocations can only happen from the context of a @Composable function", karena Compose butuh konteks khusus untuk melacak state dan re-composition.