如何为对话添加视图?
上一篇文章中只能显示一个空的对话框,除了标题和一个确定按钮,别的什么都没有,这样的对话框没有任何意义。所以本文需要解答如何为对话框添加内容的问题。
我们的对话框是通过AlertDialog.Builder创建的,在创建之前,可以跟我们几个机会去配置对话框。为了给对话框添加视图,可以通过调用AlertDialog.Builder的setView方法实现。不过,首先,你得有一个视图对象,可以通过xml布局文件的形式生成一个视图对象,直接看代码(包括下面的布局文件):
public Dialog onCreateDialog(Bundle savedInstanceState) { View v = getActivity().getLayoutInflater().inflate( R.layout.dialog_date, null); // 要在屏幕上显示DialogFragment时,托管activity的FragmentManager会调用该方法创建对话框实例 /* * 采用“流接口”的方式创建AlertDialog实例:首先通过传入上下文对象给AlertDialog.Builder类的构造方法 * 创建一个AlertDialog.Builder实例,开头的new就是起到了这个作用;创建出的AlertDialog.Builder实例紧 * 接着调用两个AlertDialog.Builder类的set方法配置对话框(如需要为PositiveButton添加响应代码,需实现 * DialogInterface * .OnClickListener,并替换null);最后调用AlertDialog.Builder类的create方法创建AlertDialog * 实例。 */ return new AlertDialog.Builder(getActivity()).setView(v) .setTitle(R.string.date_picker_title) .setPositiveButton(android.R.string.ok, null).create(); }
<?xml version="1.0" encoding="utf-8"?> <DatePicker xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dialog_date_datePicker" android:layout_width="match_parent" android:layout_height="match_parent" android:calendarViewShown="false" > </DatePicker>
时间: 2025-01-04 06:28:09