如何在安卓系统中以编程方式创建AlertDialog对话框

3
在我的Android应用程序中,我需要以编程方式使用AlertDialog,并在第一行中使用两个图像,在第二行中使用另外两个图像。我看到了一些示例,例如:
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();

在上面的例子中,每一行只有一个选项,比如第一行是红色,下一行是绿色,第三行是蓝色,我需要在每一行实现两个选项,请指导。
1个回答

0
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>

在 mDialog.setContentView() 中添加你的自定义布局。

我对Android非常陌生,请指导我如何在Android XML中创建自定义布局。 - sivanesan1
这只是一个像您为活动创建的XML文件一样的文件。您想要显示按钮文本视图,编辑文本等内容。 - yuva ツ
我想使用弹出菜单进行某种排序。 - sivanesan1
2
你想要什么?在你的问题中,好像你想要对话框,现在又说弹出菜单。这两个是不同的东西。试试这个例子,你会得到一个对话框。 - yuva ツ
你给我的东西是正确的。我创建了自定义布局,它运行良好。非常感谢你... - sivanesan1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接