本文实例讲述了Android基于DialogFragment创建对话框的方法。分享给大家供大家参考,具体如下:
成都创新互联专注于企业营销型网站建设、网站重做改版、于都网站定制设计、自适应品牌网站建设、成都h5网站建设、商城建设、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为于都等各大城市提供网站开发制作服务。
/** * 使用DialogFragment创建对话框 * @description: * @author ldm * @date 2016-5-12 下午2:00:01 */ public class FragmentAlertDialog extends Activity { private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.fragment_dialog); // 初始化Button及设置监听 button = (Button) findViewById(R.id.show); button.setOnClickListener(new OnClickListener() { public void onClick(View v) { // 弹出对话框 showDialog(); } }); } void showDialog() { // DialogFragment 创建对话框 DialogFragment newFragment = MyAlertDialogFragment .newInstance(R.string.alert_dialog_two_buttons_title); newFragment.show(getFragmentManager(), "dialog"); } public void doPositiveClick() { Log.i("FragmentAlertDialog", "Positive click!"); } public void doNegativeClick() { Log.i("FragmentAlertDialog", "Negative click!"); } /** * 自定义弹出对话框DialogFragmet * * @description: * @author ldm * @date 2016-5-12 下午1:54:31 */ public static class MyAlertDialogFragment extends DialogFragment { public static MyAlertDialogFragment newInstance(int title) { MyAlertDialogFragment frag = new MyAlertDialogFragment(); Bundle args = new Bundle(); args.putInt("title", title); frag.setArguments(args); return frag; } /** * DialogFragment需要实现onCreateView或者onCreateDIalog方法。 * onCreateView():使用定义的xml布局文件展示Dialog。 * onCreateDialog():利用AlertDialog或者Dialog创建出Dialog。 */ @Override public Dialog onCreateDialog(Bundle savedInstanceState) { int title = getArguments().getInt("title"); return new AlertDialog.Builder(getActivity())//创建一个Dialog .setIcon(R.drawable.alert_dialog_icon)//设置图标 .setTitle(title)//设置标题 .setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {//确认(OK)按钮 public void onClick(DialogInterface dialog, int whichButton) { ((FragmentAlertDialog) getActivity()) .doPositiveClick(); } }) .setNegativeButton(R.string.alert_dialog_cancel,//取消(Cancel)按钮 new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { ((FragmentAlertDialog) getActivity()) .doNegativeClick(); } }).create(); } } }
布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical" android:padding="4dip" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical|center_horizontal" android:layout_weight="1" android:gravity="top|center_horizontal" android:text="Example of displaying an alert dialog with a DialogFragment" android:textAppearance="?android:attr/textAppearanceMedium" /> <Button android:id="@+id/show" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0" android:text="@string/show" > </Button> </LinearLayout>
开源代码:https://github.com/ldm520/ANDROID_API_DEMOS
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
当前名称:Android开发之基于DialogFragment创建对话框的方法示例
当前链接:https://www.cdcxhl.com/article26/ijjhjg.html
成都网站建设公司_创新互联,为您提供手机网站建设、网站维护、外贸建站、网站建设、网页设计公司、网站策划
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联