关于弹窗的view是以怎么样的形式存在的问题

https://blog.csdn.net/haiyang497661292/article/details/78097775

https://blog.csdn.net/qq_21556263/article/details/82768420

https://www.cnblogs.com/waleyx/p/3649411.html

https://www.jianshu.com/p/1c4059d3865b?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

近日遇到一些问题,接入广告sdk的时候,老板提出了"拦截广告的点击监听并自己控制”这样要求

然后设想了一下解决的方式,先获取弹窗的view(PopupWindow、dialog),然后获取view的组件,最后获取组件的listener

组件有点击广告,点击关闭两个内容需要由我们控制(点击范围改变,自动点击等)(感觉吃枣药丸)

 

 

通过上面几篇(特别是第四篇的源码解析)基本可以看得出最主要的是WindowManagerGlobal

view的添加、更新、删除都通过WindowManagerGlobal

而view的大小设置位置设置则通过windowManager实现

想象中处理方式是从WindowManagerGlobal获取View对象,然后再获取组件,最后进行操作

但是从windowManagerGlobal获取当前展示的view的方法没有发现甚至从activity直接获取windowManagerGlobal单例的时候也失败了

即使获取了view,不知道layout里面组件对应的id也无法指定组件并进行修改,可能这个解法是错误的,需要寻求另外的方式来实现

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值