Wednesday, January 16, 2019

Popup Dialog Pada Fragment Android Studio Tutorial

Halo semua, sekarang saya akan membagikan tutorial cara membuat popup dialog pada activity yang menggunakan fragment pada android studio.


Hal pertama yang kamu butuhkan adalah membuat sebuah tampilan layout yang akan dimunculkan sebagai popup dialog, berikut contoh layout tampilan yang saya buat :

confirmation.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/mainLyt"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:layout_marginLeft="10dp"    android:layout_marginTop="10dp"    android:layout_marginRight="10dp"    android:gravity="center"    tools:layout_margin="10dp">

    <RelativeLayout        android:id="@+id/rlpopup"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:background="@drawable/frame"        android:gravity="center_vertical"        android:paddingLeft="10dp"        android:paddingTop="10dp"        android:paddingRight="10dp"        android:paddingBottom="10dp">

        <LinearLayout            android:id="@+id/layout_parent_summarypiutang"            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:gravity="center"            android:orientation="vertical">

            <LinearLayout                android:layout_width="match_parent"                android:layout_height="match_parent"                android:orientation="vertical">

                <TextView                    android:id="@+id/textconfirmation"                    android:layout_width="match_parent"                    android:layout_height="wrap_content"                    android:gravity="center"                    android:text="Apakah Anda Yakin?"                    android:textSize="14dp" />

                <LinearLayout                    android:layout_width="match_parent"                    android:layout_height="match_parent"                    android:orientation="horizontal">

                    <Button                        android:id="@+id/yeah"                        android:layout_width="wrap_content"                        android:layout_height="wrap_content"                        android:layout_margin="25dp"                        android:layout_marginTop="25dp"                        android:layout_weight="1"                        android:background="@drawable/shapebuttonsales"                        android:gravity="center"                        android:paddingLeft="20dp"                        android:paddingTop="10dp"                        android:paddingRight="20dp"                        android:paddingBottom="10dp"                        android:text="Ya" />

                    <Button                        android:id="@+id/yeahno"                        android:layout_width="wrap_content"                        android:layout_height="wrap_content"                        android:layout_margin="25dp"                        android:layout_marginTop="25dp"                        android:layout_weight="1"                        android:background="@drawable/shapebuttonsales"                        android:gravity="center"                        android:paddingLeft="20dp"                        android:paddingTop="10dp"                        android:paddingRight="20dp"                        android:paddingBottom="10dp"                        android:text="Tidak" />
                </LinearLayout>
            </LinearLayout>


        </LinearLayout>


    </RelativeLayout>

</RelativeLayout>




Kemudian pada tampilan java fragment kamu harus menginisialisasi layout yang kamu buat sebelumnya, cantumkan seperti ini :

pada public class : 
Dialog confirmDialogue;

Pada Public View onCreateView :
confirmDialogue = new Dialog(getActivity(), android.R.style.Theme_Black_NoTitleBar);


Pada action yang saya lakukan adalah sebelumnya mengklik sebuah tombol reject untuk memunculkan popup dialog tersebut ,
Berikut Code nya :

rejectButton.setOnClickListener(new View.OnClickListener(){

    @Override    public void onClick(View view) {
        //Toast.makeText(getActivity(), "CLICKED", Toast.LENGTH_SHORT).show();
        textconfirm = "Apakah Anda Yakin Untuk Reject?";

        confirmDialogue.getWindow().setBackgroundDrawable(new ColorDrawable(Color.argb(100, 0, 0, 0)));
        confirmDialogue.setCanceledOnTouchOutside(true);
        confirmDialogue.setContentView(R.layout.confirmation);
        confirmDialogue.setCancelable(true);
        confirmDialogue.show();

        TextView textconf = (TextView) confirmDialogue.findViewById(R.id.textconfirmation);
        textconf.setText(textconfirm);
        yeahno = (Button) confirmDialogue.findViewById(R.id.yeahno);
        yeah = (Button) confirmDialogue.findViewById(R.id.yeah);

        yeah.setOnClickListener(new View.OnClickListener(){
            @Override            public void onClick(View view) {
                
                   confirmDialogue.cancel();
                }

            }
        });

        yeahno.setOnClickListener(new View.OnClickListener(){
            @Override            public void onClick(View view) {
                confirmDialogue.cancel();

            }
        });
        //confirmDialogue.cancel();
    }
});


Nah, inti dari code diatas untuk action menampilkan layout tersebut adalah inisialisasi layout, dan proses menampilkan layout tersebut pada cude diatas yaitu:

confirmDialogue.getWindow().setBackgroundDrawable(new ColorDrawable(Color.argb(100, 0, 0, 0)));
confirmDialogue.setCanceledOnTouchOutside(true);
confirmDialogue.setContentView(R.layout.confirmation);
confirmDialogue.setCancelable(true);
confirmDialogue.show();


confirmDialogue.show(); digunakan untuk memunculkan layout popup dialog android studio.
confirmDialogue.cancel(); digunakan untuk menutup layout popup dialog android studio.
confirmDialogue.setContentView(R.layout.confirmation); Digunakan untuk inisialisasi layout mana yang akan kita panggil sebagai popup dialog.
confirmDialogue.setCanceledOnTouchOutside(true); Digunakan untuk agar popup dialog android studio dapat di close ketika touch area diluar dari layout tersebut.

1 comment:

  1. ketika yang mau ditampilkan di popup dari mysql
    bagian ini dimana?/

    ReplyDelete