Tadikan kita udah bahas tentang close dialog tapi untuk tampilan defaultnya. Sekarang kita coba kita buat dengan tampilan yang kita kehendaki, misal saya mau buat yang seperti ini.
Langsung saja kita buat projectnya atur sedemikian rupa:
Untuk struktur filenya lihat di sini,, yang di rubah hanya si class,layout, + nambah gambar n layout di drawable,
Nah ini dia scripnya :
Kita buat
btn_no.xml dan
btn_yes.xml untuk tombol jangan lupa lengkapi gambar"nya terlebih dahulu:
btn_no.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- Jika di Tekan tombol maka gambar yang muncul gambar salah1 -->
<item android:state_pressed="true"
android:drawable="@drawable/salah1"></item>
<!-- Jika tombol tidak di tekan maka gambar yang muncul gambar benar -->
<item android:drawable="@drawable/salah"></item>
</selector>
btn_yes.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- Jika di Tekan tombol maka gambar yang muncul gambar benar1 -->
<item android:state_pressed="true"
android:drawable="@drawable/benar1"></item>
<!-- Jika di tombol Tidak Tekan maka gambar yang muncul gambar benar -->
<item android:drawable="@drawable/benar"></item>
</selector>
Setelah Itu Kita buat Layoutnya dulu:
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
style="@style/AppBaseTheme"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/logocoretan2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="200dp"
android:text="Tekan Tombol Back Untuk Keluar" />
</LinearLayout>
dialog_exit.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
style="@style/AppBaseTheme"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/logocoretan2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="200dp"
android:text="Tekan Tombol Back Untuk Keluar" />
</LinearLayout>
yang terakhir kita ubah di
MainActivity.java nya
package fai.coretan.dialogclose;
import android.os.Bundle;
import android.app.Activity;
import android.app.Dialog;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.widget.Button;
public class MainActivity extends Activity {
Dialog exit;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void onBackPressed() {
exit();
}
private void exit() {
// TODO Auto-generated method stub
exit = new Dialog(MainActivity.this,android.R.style.Theme_Translucent);
exit.requestWindowFeature(Window.FEATURE_NO_TITLE);
exit.setCancelable(false);
exit.setContentView(R.layout.dialog_exit);
Button btnclose = (Button)exit.findViewById(R.id.btnyes);
btnclose.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
finish();
}
});Button btnclose1 = (Button)exit.findViewById(R.id.btnno);
btnclose1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
exit.dismiss();
}
});
exit.show();
}
}
Coba deh di jalankan,,
Pasti pada binggung ya cari imagenya, bisa di download di sini
dan juga projectnya juga bisa di download di sini,,
Langsung 2 bagian nih yang di pelajari di post ini yang pertama buat custom close dialog dan yang kedua buton dengan image ketika di tekan tombol bisa berubah. hehe,,
selamat bereksperimen,, ^_^
Title :
Android | Membuat Close Dialog Custom Pada Aplikasi Android
Description : Tadikan kita udah bahas tentang close dialog tapi untuk tampilan defaultnya. Sekarang kita coba kita buat dengan tampilan yang kita kehendak...
Rating :
5