天天看点

android Dialogs

1.引言

dialog是对话框的基类,可以实现以下子类:

alertdialog,datepickerdialog,timpickerdialog。

这些类为你定义了样式和结构,不过你可以使用dialogfragment作为对话框的内容。通过dialogfragment你可以自由控制你的对话框,而不是继承dialog对象沿用dialog对象的一些方法。

当用户按返回键或屏幕翻转的时候要注意dialogfragment的生命周期。dialogfragment也允许你把它的ui用在打的ui上。

如果使用support library记得引用android.support.v4.app.dialogfragment而不是<code>android.app.dialogfragment</code>.

2.一个最简单的例子

当你想显示dialog时,只需调用show()

3.方法回调

在dialogfragment中设置一个interface,通过这个接口可以将事件传递到主activity中

4.dialogfragmnt既可以显示为一个全屏的对话框,亦可以显示为一个嵌入的fragment

其中mislargelayout根据当前设备判断是否使用app的大ui布局。

mislargelayout的取值方法如下:

res/values/bools.xml

res/values-large/bools.xml

5.如果你的应用只是适配了小屏幕的手机,那么:

将你的activity设置为theme.holo.dialogwhenlarge会在大屏幕上展示为对话框。