Lanjuuut...
Sekarang kita akan membuat Custom Toast. Untuk membuat Custom Toast, kita harus mendefinisikan sebuah View layout, dalam XML atau dalam kode aplikasi, dan memanggil View tersebut kedalam method setView(view).
Contoh : kita akan membuat sebuah file XML baru untuk Toast tersebut. Dalam hal ini ane berinama toast_layout.xml.
Caranya :klik kanan layout -> New -> Android XML File
Isikan konfigurasinya seperti gambar diatas. Langkah selanjutnya buat desain Toastnya. Disini ane menambahkan ImageVIew dan TextView kedalam toast_layout.xml nya. Dan berikut kode lengkapnya.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/toast_layout_root" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" android:orientation="vertical" android:padding="8dp" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ffffff" tools:ignore="HardcodedText" /> <ImageView android:id="@+id/imageView1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/logolufi" tools:ignore="ContentDescription" /> </LinearLayout>
Oh iya, jangan sampai lupa, karena kita menggunakan ImageView maka sebelumnya kita harus menambahkan sebuah image dengan format .png dan usahakan namanya image yang akan kita gunakan menggunakan huruf kecil semua. Ane menggunakan logolufi sebagai image yang akan ditampilkan pada Custom Toast nantinya.
android:src="@drawable/logolufi"
Cari sebuah image -> copy -> paste-kan ke folder drawable-mdpi.

Langkah berikutnya adalah buka MainActivity.java dan buat sebuah method baru untuk menampung Custom Toast Tersebut. Untuk menampilkan Custom Toast kita menggunakan setView(view). Berikut source nya.
Langkah berikutnya adalah buka MainActivity.java dan buat sebuah method baru untuk menampung Custom Toast Tersebut. Untuk menampilkan Custom Toast kita menggunakan setView(view). Berikut source nya.
public void customToast(){ LayoutInflater inflater=getLayoutInflater(); View layout=inflater.inflate(R.layout.toast_layout, (ViewGroup) findViewById(R.id.toast_layout_root)); TextView text=(TextView) layout.findViewById(R.id.textView1); text.setText("Ini Adalah Custom Toast"); Toast toast=new Toast(getApplicationContext()); toast.setGravity(Gravity.BOTTOM, 10, 10); toast.setDuration(Toast.LENGTH_LONG); toast.setView(layout); toast.show(); }
Selanjutnya membuat event ketika Button ketiga di klik. Tambahkan kode berikut pada method onCreate(Bundle savedInstanceState).
button3.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { customToast(); } });
package com.is.toasttest; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.view.Gravity; import android.view.LayoutInflater; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity { Button button1; Button button2; Button button3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button1=(Button) findViewById(R.id.button1); button2=(Button) findViewById(R.id.button2); button3=(Button) findViewById(R.id.button3); button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { toast(); } }); button2.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { posisiToast(); } }); button3.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { customToast(); } }); } public void toast(){ Context context=getApplicationContext(); CharSequence text="Ini Adalah Toast"; int durasi=Toast.LENGTH_LONG; Toast toast=Toast.makeText(context, text, durasi); toast.show(); } public void posisiToast(){ Context context=getApplicationContext(); CharSequence text="Ini Adalah Posisi Toast"; int durasi=Toast.LENGTH_LONG; Toast toast=Toast.makeText(context, text, durasi); toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); toast.show(); } public void customToast(){ LayoutInflater inflater=getLayoutInflater(); View layout=inflater.inflate(R.layout.toast_layout, (ViewGroup) findViewById(R.id.toast_layout_root)); TextView text=(TextView) layout.findViewById(R.id.textView1); text.setText("Ini Adalah Custom Toast"); Toast toast=new Toast(getApplicationContext()); toast.setGravity(Gravity.BOTTOM, 10, 10); toast.setDuration(Toast.LENGTH_LONG); toast.setView(layout); toast.show(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_main, menu); return true; } }
Akhirnya selesai sudah eksperimen yang kita lakukan. Dari membuat Toast yang biasa, Toast yang dapat kita sesuaikan posisinya dan yang terakhir Custom Toast. Oleh karena itu postingan kali ini saya akhiri sekian, semoga bermanfaat dan sampai jumpa dipostingan berikutnya.
Baca juga :
Baca juga :
Download Project Latihannya disini.
0 comments:
Post a Comment