在Android应用中任意位置执行代码弹出Dialog有什么优雅的实现方案

2020-10-28 科技 75阅读
这个可以考虑在activity的基类中做一些处理。首先定义一个静态的Queue,然后添加一个方法,功能是获取当前显示的activity,显示一个Dialog,当activity处于onPause和onStop时,直接显示Dialog,如果是activity已经执行了onStop,则把这个要显示的内容和listener之类的装进一个类添加到Queue中,等onPause的时候再一个个poll出来执行,无论是activity恢复或者finish进入下一个activity都会执行到onPause。
但这个做法对于SDK还是不太好,而且有内存泄漏的风险,最好不要给这些Dialog设置用户实现的Listener,可以用EventBus或广播来发送和接收这些Dialog的事件。。。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com