How to create alertdialog programmatically in android

左心房为你撑大大i 提交于 2020-01-04 04:37:25

问题


In my android app i need to use alertdialog programmatically with two images in first row and another two images in second row. i seen some example like,

CharSequence colors[] = new CharSequence[] {"red", "green", "blue", "black"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a color");
builder.setItems(colors, new DialogInterface.OnClickListener() {
  @Override
public void onClick(DialogInterface dialog, int which) {
    // the user clicked on colors[which]
}
});
builder.show();

in the above example have only one option for every row like red in first row, green in next row, blue in third row like that. I need to implement 2 option in every row, pls guide me,,


回答1:


Dialog mDialog;
mDialog=new Dialog(SplashScreen.this);
            mDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
            mDialog.setContentView(R.layout.yourcustomlayout);
            TextView ok,cancel;
            ok=(TextView) mDialog.findViewById(R.id.dialogyes);
            cancel=(TextView) mDialog.findViewById(R.id.dialogno);
            ok.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {


                    mDialog.cancel();

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

                @Override
                public void onClick(View v) {
                    finish();
                    mDialog.cancel();
                }
            });
            mDialog.show();

yourcustomlayout.xml -

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

    <TextView
        android:id="@+id/dialogtitle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:gravity="center"
        android:text="Internet Connection"
        android:textAppearance="@android:style/TextAppearance.Medium"
        android:textColor="@android:color/black" />

    <View
        android:id="@+id/view1"
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/dialogtitle"
        android:layout_marginTop="25dp"
        android:background="#C83437" />

    <TextView
        android:id="@+id/dialogMessage"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/view1"
        android:layout_marginBottom="20dp"
        android:layout_marginTop="10dp"
        android:gravity="center"
        android:text="You are not connected to internet.\nDo you want to on connection?"
        android:textAppearance="@android:style/TextAppearance.Medium"
        android:textColor="@android:color/black" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="70dp"
        android:layout_alignParentLeft="true"
        android:layout_marginBottom="10dp"
        android:layout_marginTop="150dp"
        android:gravity="center"
        android:orientation="horizontal"
        android:weightSum="1" >

        <TextView
            android:id="@+id/dialogyes"
            android:layout_width="wrap_content"
            android:layout_height="60dp"
            android:layout_marginBottom="10dp"
            android:layout_weight="0.5"
            android:gravity="center"
            android:text="YES"
            android:textColor="@android:color/black" />

        <TextView
            android:id="@+id/dialogno"
            android:layout_width="wrap_content"
            android:layout_height="60dp"
            android:layout_marginBottom="10dp"
            android:layout_weight="0.5"
            android:gravity="center"
            android:text="NO"
            android:textColor="@android:color/black" />
    </LinearLayout>

</RelativeLayout>

in mDialog.setContentView() add your custom layout.



来源:https://stackoverflow.com/questions/25236247/how-to-create-alertdialog-programmatically-in-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!