1、引言
在安卓开发中对话框的使用是不可避免的,但是原生的对话框用起来总感觉差点意思,而且位置不好控制,在与界面的交互上也不够灵活,没有像activity那样的生命周期方法,以至于某些特殊的功能无法实现。此时我们就希望有一种组件能代替对话框的作用,并且有各式各样的生命周期方法,便于控制,针对这种情况我们可以考虑把activity转化为对话框,接下来就以此为例,简单演示如何使用activity类型的对话框。
2、继承于activity类
被当做对话框使用的activity,必须继承于activity类,不能继承AppCompatActivity类,否则会直接报错。
3、设置并配置主题
要想把activity当做对话框使用,还必须为其配置主题并在配置文件中引用该主题,相关代码如下:
3.1、activity的主题代码
<!-- 弹出主界面的Activity类型的dialog -->
<style name="ActivityDialog" parent="android:Theme.Dialog">
<!--设置dialog的背景-->
<item name="android:windowBackground"
>@android:color/transparent</item>
<!--设置无标题-->
<item name="android:windowNoTitle">true</item>
&l