设定好以后, 使用create()方法来获得AlertDialog对象. 下面的主题展示了如何为AlertDialog定义不同的属性, 使用AlertDialog.Builder类....这个方法在每次打开对话框时被调用,而onCreateDialog(int) 仅在对话框第一次打开时被调用。如果你不定义onPrepareDialog(),那么这个对话框将保持和上次打开时一样。...使用消除侦听器Using dismiss listeners 如果你希望你的应用程序在一个对话框消亡的时候执行一些流程,那么你应该附着一个on-dismiss侦听器到对话框上。...通过AlertDialog.Builder(Context)获取一个构造器然后使用这个类的公共方法来定义警告对话框的所有属性。当得到构造器后,通过create().方法来获取警告对话框对象。...有时我是不调用create()的,而是在设置好了后直接调用show()显示AlertDialog。
Android的棉花糖我们需要所有权限请求需要得到用户的许可(当我们的targetSdkVersion>=23时是必须动态获取权限申请)。...STATE时就会弹出这个权限申请dialog,如果用户点击了允许,那恭喜你,万事大吉了,你就不用去担心需要权限的代码不能执行了。...但是,如果用户点击了拒绝,那很不幸,你需要权限的代码是不能执行,如果你不加处理,非要执行那段代码的话,应用就会直接崩溃,崩溃日志就会告诉你,需要获取该权限。 ?...}, PERMISSION_REQUEST_CODE); } } 当我们点击了拒绝时,就会打出权限被拒绝,您不能继续执行。...图片来自简书APP 当用户跟随我们的引导去授予权限时,然后返回我们的APP时,checkPermissionsrp()方法就会返回true,这时候,我们的代码逻辑就可以正常执行了。
在Android中的每个应用程序可以对自己感兴趣的广播进行注册,这样该程序就只会接收自己所关心的广播内容,这些广播可能来自于系统的,也可能来自于其他应用程序的。...1、广播的类型 标准广播:Normal broadcast,是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎都会在同一时刻接收到这条广播消息,因此他们之间没有任何先后顺序可言。...有序广播:Ordered broadcast,是一种同步执行的广播,在广播发出之后,同一时刻只会有一个广播接收器能够接收到这条广播,当这个广播接收器中的逻辑执行完毕后,广播才会继续传递。...2、广播接收器的使用方法 Android系统内置了很多系统级别的广播,我们可以在应用程序中通过监听这些广播来得到各种系统的状态信息。...此外,还有一点非常重要的是,android系统为了保证应用程序的安全性做了规定,如果程序中需要访问系统的关键性信息,必须在配置文件中声明权限才行,否则程序将会直接崩溃,比如像上面的查询网络状态就需要声明权限
首先,必须创建AlertDialog.Builder对象 然后,通过Builder的show方法显示对话框 或者通过Builder.create方法返回AlertDialog对象,再通过AlertDiaolg.show...使用show()方法显示对话框是异步的,也就是说,当调用AlertDialog.Builder.show 或者AlertDialog.show方法显示对话框后,show方法会立即返回,并且继续执行后面的代码...(); // 获取lv lv = ad.getListView(); // 显示AlertDialog ,show为异步方法,执行后,会继续执行下面的代码...由于存在“确定”按钮的单击事件中需要引用AlertDialog变量,因此先使用create方法返回AlertDialog对象,然后在单击事件中使用该变量 ---- 进度对话框 查看大拿的总结 进度对话框通过...调用sendEmptyMessage方法只能是handleMessage方法执行一次,要想以一定的时间间隔循环执行handleMessage方法,需要在handleMessage方法中调用sendEmptyMessageDelayed
:showMsgFromWeb()"); 该行为的执行效果如下图所示,App通知JS调用showMsgFromWeb方法,该方法弹出了一个alert消息框。..., " Android4.4之后才支持该功能", Toast.LENGTH_SHORT).show(); } 该行为的执行效果如下图所示,App通知JS调用getMsgFromWeb方法,获得返回消息后再由...//不然JsResult的confirm方法没有得到执行,网页上的其它控件就不可使用 builder.setCancelable(false).create().show(); return...3. evaluateJavascript是Android在4.4.2之后才引入的新方法,如果是4.4.2之前的Android版本,需要注意做兼容处理。 4....具体的解决方法是:调用WebView对象的post方法,然后在post的Runnable任务中再去调用JS方法,例子代码如下所示: private final class Contact { /
我们来看下创建一个对话框须要的步骤: 1、使用创建AlertDialog.Builder对象 2、调用AlertDialog.Builder的setTitle()或setCustomTitle()方法设置标题...3、调用AlertDialog.Builder的setIcon()方法设置图标 4、调用一些其它设置方法设置标题 5、调用AlertDialog.Builder的setPositiveButton()...、setNegativeButton()或者setNeutralButton()加入多个button 6、调用create()方法创建AlertDialog对象,再调用AlertDialog对象的show...()方法将该对话框显示出来。...} }) // 创建、并显示对话框 .create() .show(); } private AlertDialog.Builder setPositiveButton( AlertDialog.Builder
在开发过程中,与用户交互式免不了会用到对话框以实现更好的用户体验,所以掌握几种对话框的实现方法还是非常有必要的。在看具体实例之前先对AlertDialog做一个简单介绍。...6、调用AlertDialog.Builder的create()方法创建AlertDialog对象,再调用AlertDialog对象的show()方法将该对话框显示出来。...调用setSingleChoiceItems()方法时既可传入数组作为参数,也可传入Cursor(相当于数据库查询结果集)作为参数,也可传入ListAdapter作为参数。...在调用setMultiChoiceItems()时既可传入数组作为参数,也可传入Cursor作为参数。...需要注意的时在调用setMultiChoiceItems()方法添加多选列表时,还需要传入一个boolean[]参数,该参数有两个作用:①设置初始化时选中哪些列表项。
正在编写的邮件自动保存到了草稿箱 Ø 删除某条通讯了成功了 u Toast 窗体只是占据一部分的屏幕窗口 u 当前的 Activity 依然保持存在并能与用户交互 u Toast 在显示一段时间超时后会自动关闭...Toast 窗体 u 调整 Toast 的显示位置 u 默认情况下, Toast 显示在屏幕底部,水平居中的位置 u 通过 Toast.setGravity (...="wrap_content" android:textColor="#FFF" u 2 、采用动态加载的办法在程序中为 Toast...(this); AlertDialog alert = builder.create(); u 使用 Builder 对象的 setTitle () 方法设置标题内容 builder.setTitle...的风格设为对话枢风格即 可, 需要 先增加 Activity, 在清单文件中进行设置 <activity android:name="com.aaa.ui.DialogTheme" android
{ //第一个参数是上下文 //第二个参数是监听时间选择后的事件 //后面两个数是默认是时间 //后一个是代表是否显示时间的格式是24小时制的...对象上的 setView()方法将其添加到 AlertDialog中 xml自定义布局 在 DialogFragment的 onCreateDialog...()方法中加载自定义布局文件,并添加到 AlertDialog.Builder中,在按钮点击事件中获取用户名和密码 public class LoginDialogFragment extends DialogFragment...mPassword.getText().toString(),Toast.LENGTH_SHORT).show(); break; } } } 在
5、 调用AlertDialog.Builder的create()方法创建AlertDialog对象。 6、 调用AlertDialog对象的show()方法显示该对话框。...(4)执行消息循环时获取到发送的广播,然后回调广播接收者中的onReceive()方法并在该方法中进行相关处理。...其生命周期方法的具体含义如下: (1)onCreate ():第一次创建服务时执行的方法。 (2)onStartCommand():调用startService()方法启动服务时执行的方法。...(3)onBind():调用bindService()方法启动服务时执行的方法。 (4)onUnbind():调用unBindService()方法断开服务绑定时执行的方法。...(5)onDestory():服务被销毁时执行的方法。
所以AlertDialog并不需要到布局文件中创建,而是在代码中通过构造器(AlertDialog.Builder)来构造标题、图标和按钮等内容的。...创建构造器AlertDialog.Builder的对象; 通过构造器的对象调用setTitle、setMessage等方法构造对话框的标题、信息和图标等内容; 根据需要,设置正面按钮、负面按钮和中立按钮...; 调用create方法创建AlertDialog的对象; AlertDialog的对象调用show方法,让对话框在界面上显示。...AlertDialog.Builder自己也有一个show方法,可以显示对话框,所以上面的第4、第5步可以简化为一步。 下面,我们就来简单创建几种常用的AlertDialog吧。...,用户在选好某一项之后记下其选择,下次点开对话框时就默认选中该项。
在4.0至4.2的Android系统上,Webview自己增加了searchBoxJavaBredge_,可能被黑客利用导致远程代码执行。...builder = new AlertDialog.Builder(LocalActivity.this); builder.setMessage(msg).create().show();...2、如果js调用android代码时,logcat报错“Uncaught TypeError: Object [object Object] has no method”,那是因为Android4.2以上版本默认不开放...使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。”...在4.0至4.2的Android系统上,Webview自己增加了searchBoxJavaBredge_,可能让黑客利用导致远程代码执行 wv_web.removeJavascriptInterface
} 28 }); 29 //生成对话框 30 Dialog dialog = builder.create...如果不能退出,则当前按键时间设为第一次,下一次为第二次 25 return true; //屏蔽后退键的效果 return false;也可以 ,只要不让方法执行...; 4 import android.app.Activity; 5 import android.app.AlertDialog; 6 import android.app.Dialog;...; 9 import android.view.KeyEvent; 10 import android.view.Menu; 11 import android.widget.Toast; 12...} 106 // }); 107 // 108 // Dialog dialog = builder.create
二 AlertDialog使用方法 AlertDialog是Android的一个类,位于android.app.AlertDialog包中。...的create方法创建AlertDialog实例,并显示对话框: AlertDialog alertDialog = builder.create(); alertDialog.show(); AlertDialog.Builder...三 AlertDialog常用属性和方法 AlertDialog.Builder类提供了一系列方法用于设置AlertDialog的属性和配置。...通过重写onClick方法来实现相应的逻辑处理。 创建和显示对话框: create():使用设置的属性和配置创建AlertDialog实例。...根据需求,在构建器中设置对话框的标题、消息内容、图标等属性,并通过按钮点击监听器处理用户的响应。最后通过create方法创建并显示AlertDialog实例。
; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import...android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast...(this).create(); //设置标题 dialog.setTitle("这是标题"); //设置内容...Toast.LENGTH_SHORT).show(); // } // }); // //设置中性按钮的信息,包括文本和监听器,该方法使用较少...// }); // //创建对话框 // AlertDialog alertDialog = builder.create
其中最常用的是AlertDialog,而且需要自定义对话框的时候,多半也是在AlertDialog.Builder基础上集成其他的控件,具体参见《Android开发笔记(六十六)自定义对话框》。...ProgressDialog也比较常用,在系统加载信息或者等待其他事情时,都可能需要显示ProgressDialog。...最后还要提供一个回调接口,用于主页面上处理日期和时间的选择事件,同时在确定按钮的点击事件中要触发该回调接口的方法。...其次在该实例加入到activity页面时(onAttach方法),设置回调接口,并从getArguments()中取出参数信息。...onCreateDialog方法后面当然要依例添加AlertDialog.Builder对象,依次设置标题、内容、图标、确定按钮、取消按钮等元素,其中确定按钮的点击事件需要调用回调接口的处理方法。
另外,会发现构造方法是保护的,如果我们要创建AlertDialog的话,我们需要使用到该类中的一个静态内部类:public static class Builder,然后来调用AlertDialog里的相关方法...,来对AlertDialog进行定制,最后调用show()方法来显示我们的AlertDialog对话框!...()还有其他方法来指定显示的内容; 调用setPositive / Negative / NeutralButton()设置:确定,取消,中立按钮; 调用创建()方法创建这个对象,再调用显示()方法将对话框显示出来...你选择了" + Loves[which], Toast.LENGTH_SHORT).show(); } }).create...Toast.LENGTH_SHORT).show(); } }) .create
DialogFragment在android 3.0时被引入。是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。典型的用于:展示警告框,输入框,确认框等等。...)继承DialogFragment,重写onCreateView方法 package com.example.zhy_dialogfragment; import android.app.DialogFragment...重写onCreateDialog方法 package com.example.zhy_dialogfragment; import android.app.AlertDialog; import...MainActivity中需要实现我们的接口LoginInputListener,实现我们的方法,就可以实现当用户点击登陆时,获得我们的帐号密码了: c) MainActivity package...左边为模拟器,右边为我的手机~~~~~ 7、屏幕旋转 当用户输入帐号密码时,忽然旋转了一下屏幕,帐号密码不见了~~~是不是会抓狂 传统的new AlertDialog在屏幕旋转时,第一不会保存用户输入的值
{ //为了样式统一和兼容性,可以使用 V7 包下的 AlertDialog.Builder AlertDialog.Builder builder = new AlertDialog.Builder...(getActivity()); // 设置主题的构造方法 // AlertDialog.Builder builder = new AlertDialog.Builder(getActivity.../ 设置主题的构造方法 // AlertDialog.Builder builder = new AlertDialog.Builder(getActivity(), R.style.CustomDialog...扩展阅读:Dialog 在屏幕翻转时的处理 无标题栏/全屏 在基本用法里代码注释有设置主题的地方,下面详细说下两种方法下设置无标题栏和实现全屏的方式: 无标题栏 对于方法 ① : @Override public...应用场景区别 文章一开始简单总结了方法 ① 和方法 ② 的应用场景,这里说明下: 从基本的用法中可以看到方法 ① 为简单的替代 Dialog 提供了非常方便的创建方式,比方法 ② 有优势 方法 ① 在使用了多线程
AlertDialog没有公开的构造函数,必须借助于AlertDialog.Builder才能完成参数设置。Builder的常用方法如下: setIcon : 设置标题的图标。...--以上方法用于设置交互按钮。 通过Builder设置完参数,还需调用create方法才能生成AlertDialog对象。...下面是Dialog的常用方法: Dialog构造函数 : 可定义对话框的主题样式(样式在styles.xml中定义)。如是否有标题、是否为半透明、对话框的背景等等。...这个似乎也在哪里见过,看看这里有没有《Android开发笔记(二十)顶部导航栏ActionBar》,原来Activity的requestWindowFeature方法也用了Window:getWindow...下面记录滚轮控件的几个默认值,方便以后定制修改: 1、滚轮的默认背景,代码在WheelView.java的SHADOWS_COLORS 2、文字的默认大小和颜色,代码在AbstractWheelTextAdapter.java
领取专属 10元无门槛券
手把手带您无忧上云