Kotlin'de Intent ile Aktivite Geçişi Örneği
Kotlin'de bir aktiviteden diğerine geçmek için Intent kullanılır. İşte temel bir örnek:
1. Basit Aktivite Geçişi
// Mevcut aktivitede (örneğin MainActivity.kt)
val intent = Intent(this, HedefActivity::class.java)
startActivity(intent)2. Veri Göndererek Aktivite Geçişi
// Veri gönderme
val intent = Intent(this, HedefActivity::class.java).apply {
putExtra("anahtar", "Merhaba Dünya") // String gönderme
putExtra("sayi", 42) // Int gönderme
putExtra("boolDegeri", true) // Boolean gönderme
}
startActivity(intent)
// Hedef aktivitede veriyi alma (HedefActivity.kt içinde)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_hedef)
val gelenMesaj = intent.getStringExtra("anahtar")
val gelenSayi = intent.getIntExtra("sayi", 0) // 0 varsayılan değer
val gelenBool = intent.getBooleanExtra("boolDegeri", false)
// Alınan verileri kullan...
}3. Sonuç Bekleyerek Aktivite Başlatma
// Başlatma kısmı (MainActivity.kt)
val intent = Intent(this, SonucActivity::class.java)
startActivityForResult(intent, REQUEST_CODE) // REQUEST_CODE bir sabit (örn: private val REQUEST_CODE = 1)
// Sonucu işleme
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == REQUEST_CODE) {
if (resultCode == Activity.RESULT_OK) {
val sonuc = data?.getStringExtra("sonuc")
// Sonucu kullan...
}
}
}
// SonucActivity.kt'de sonuç döndürme
val resultIntent = Intent().apply {
putExtra("sonuc", "İşlem başarılı")
}
setResult(Activity.RESULT_OK, resultIntent)
finish()4. Örtük Intent Kullanımı (Diğer Uygulamaları Açma)
// Web sayfası açma
val webIntent = Intent(Intent.ACTION_VIEW, Uri.parse("https://www.example.com"))
startActivity(webIntent)
// Telefon araması yapma
val callIntent = Intent(Intent.ACTION_DIAL, Uri.parse("tel:05551234567"))
startActivity(callIntent)
// Haritalarda konum gösterme
val mapIntent = Intent(Intent.ACTION_VIEW, Uri.parse("geo:41.0082,28.9784"))
startActivity(mapIntent)5. Manifest Dosyasına Aktivite Ekleme
Yeni bir aktivite oluşturduysanız, AndroidManifest.xml dosyasına eklemeyi unutmayın:
<application ...>
<activity android:name=".HedefActivity" />
<activity android:name=".SonucActivity" />
...
</application>Bu örnekler Kotlin'de aktiviteler arası geçiş yapmak için temel yöntemleri göstermektedir. Projenizin ihtiyaçlarına göre bu örnekleri özelleştirebilirsiniz.
Hiç yorum yok:
Yorum Gönder