fragment 中dialog怎么使用
时间: 2024-01-20 17:04:04 浏览: 77
在 Android 中,可以使用 DialogFragment 类来实现对话框。DialogFragment 可以管理自己的生命周期,并将其与活动分离,因此它更加灵活和可重用性。
下面是一个简单的例子,演示如何在 Fragment 中使用 Dialog:
1. 创建一个继承自 DialogFragment 的类,用于显示对话框内容:
```
public class MyDialogFragment extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// 创建一个对话框
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Title")
.setMessage("Message")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// 点击 OK 按钮后的操作
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// 点击 Cancel 按钮后的操作
}
});
// 返回对话框
return builder.create();
}
}
```
2. 在 Fragment 中调用对话框:
```
public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// 创建视图
View view = inflater.inflate(R.layout.fragment_my, container, false);
// 显示对话框
MyDialogFragment dialogFragment = new MyDialogFragment();
dialogFragment.show(getFragmentManager(), "MyDialogFragment");
return view;
}
}
```
在这个例子中,我们创建了一个 MyDialogFragment 类,用于显示一个简单的对话框。在 MyFragment 类中,我们在 onCreateView() 方法中调用 MyDialogFragment 的 show() 方法来显示对话框。在 show() 方法中,我们传入了 FragmentManager 和一个标记字符串,用于标识对话框。
阅读全文