最近做一个关于弹窗的功能,首先是接收推送消息,得到推送消息后,在页面上弹出弹窗显示,并可在弹窗中进行一些操作。首先想到的就是方便,使用自定义Dialog去实现,发现Dialog底层需要Activity对象的支持。这样就会出现一个问题,只能在一个activity中弹框。而需求是要在用户使用的所有界面都能弹框。这时全局的弹框就变得很困难。
我说一下我的方案,我写了一个Dialog样式的Activity,设置Activity的style样式,半透明,悬浮于当前的Activity上。这样,每次收到推送,我就开启Dialog样式的Activity,就能实现我想要的效果了。
style.xml
AndroidManifest.xml
Activity中设置弹窗大小:
getWindow().setLayout(WindowManager.LayoutParams.FILL_PARENT,WindowManager.LayoutParams.FILL_PARENT);
看到这里,大家都明白了吧,希望能帮助到大家。
网友评论