Toast Kullanımı
Toast ya da durum mesajı ile küçük bir işlem hakkında kullanıcıya bilgi verebilirsiniz. Bir işlemin yapıldığını veya tamamlamak için genellikle bu yapıyı kullanırız. Bunların tek dezavantajı kullanıcının tepkisine cevap vermemesidir. Örneğin; kullanıcı bu mesaja tıkladığı zaman herhangi bir işlem meydana gelmez. Eğer kullanıcının yanıt vermesini istediğiniz bir işlem varsa bildirimleri kullanmanız gerekir.
Şimdi bu yapıyı nasıl kullanabiliriz beraber bakalım. Hazırladığım örnek uygulamanın arayüz ve kotlin kodu aşağıdaki gibidir.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="236dp" android:ems="10" android:hint="message" android:inputType="textPersonName" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.505" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <Button android:id="@+id/button" android:layout_width="216dp" android:layout_height="44dp" android:onClick="showMessage" android:text="Click" android:textAllCaps="false" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.497" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/editText" /> </androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.kt
package com.mas.toast import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.view.View import android.widget.EditText import android.widget.Toast class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } fun showMessage(view: View) { val editText = findViewById<EditText>(R.id.editText) val message = editText.text.toString() val toast = Toast.makeText(applicationContext, message, Toast.LENGTH_SHORT) toast.show() } }
Uygulamanın bu haliyle ekran çıktısı aşağıdaki gibi olur.
Toast mesajının yapısını inceleyelim.
val toast = Toast.makeText(applicationContext, message, Toast.LENGTH_SHORT) toast.show()
Toast mesajı 3 parametre alır. Bu parametreler: uygulamanın Context parametresi (applicationContext), gösterilecek mesaj (message) ve mesajın gösterilme süresidir (Toast.LENGTH_SHORT). Ayrıca show() metodu ile durum mesajının gösterilmesini sağlarız. Yukarıda Toast mesajını bir değişkene atayıp (toast) daha sonra show() metodunu çağırdık. İsterseniz kodu aşağıdaki gibi düzenleyebilirsiniz.
Toast.makeText(applicationContext, message, Toast.LENGTH_SHORT).show()
Toast mesajları varsayılan olarak ekranın alt/orta kısmında gösterilir. Aşağıdaki düzenleme ile birlikte mesajımız ekranın ortasında gösterilir.
fun showMessage(view: View) { val editText = findViewById<EditText>(R.id.editText) val message = editText.text.toString() val toast = Toast.makeText(applicationContext, message, Toast.LENGTH_SHORT) //Toast mesajı ekranın ortasında gösterilir. toast.setGravity(Gravity.CENTER_HORIZONTAL or Gravity.CENTER_VERTICAL, 0, 0) toast.show() }
Şimdilik bu kadar. Uygulamanın kaynak kodu için tıklayınız.