Thursday, March 19, 2015

Custom Alert Dialog Box

XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/r"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/back_shadow" >

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

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:paddingBottom="10dp"
            android:paddingLeft="5dp"
            android:paddingRight="5dp"
            android:paddingTop="10dp"
            android:text="@string/do_you_want_to_quit"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/LtdRed" />

        <View
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:background="@color/DarkCherry" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:padding="5dp" >

            <RelativeLayout
                android:id="@+id/r2"
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/back_shadow" >

                <TextView
                    android:id="@+id/yes"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@drawable/click_slider"
                    android:gravity="center"
                    android:padding="10dp"
                    android:text="Yes"
                    android:textAppearance="?android:attr/textAppearanceLarge"
                    android:textColor="@color/Aamli" />
            </RelativeLayout>

            <View
                android:layout_width="5dp"
                android:layout_height="2dp" />

            <RelativeLayout
                android:id="@+id/r1"
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/back_shadow" >

                <TextView
                    android:id="@+id/no"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@drawable/click_slider"
                    android:gravity="center"
                    android:padding="10dp"
                    android:text="No"
                    android:textAppearance="?android:attr/textAppearanceLarge"
                    android:textColor="@color/LtdRed" />
            </RelativeLayout>
        </LinearLayout>
    </LinearLayout>

</RelativeLayout>



CODE:

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
new ContextThemeWrapper(MainActivity.this,
android.R.style.Theme_Holo));

               // Use of ContextThemeWrapper and Holo style makes dialog without border

final AlertDialog alertDialog = alertDialogBuilder.create();
View view = getLayoutInflater().inflate(R.layout.dialog_quit, null);

TextView yes, no;
yes = (TextView) view.findViewById(R.id.yes);
no = (TextView) view.findViewById(R.id.no);

yes.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
alertDialog.dismiss();

                               // to finish current activity
finish();

}
});
no.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
alertDialog.dismiss();
}
});

alertDialogBuilder.setView(view);

                // set dimension as per xml and popup into center
alertDialog.setView(view, 0, 0, 0, 0);

// show alert
alertDialog.show();
}


No comments:

Post a Comment