Android 在WindowManager添加View进行绘制时,限制在Window内部绘制和允许绘制到窗口之外区域的方法



Android 在Window  绘制时,限制在Window内部绘制和绘制到窗口之外的方法。


今天在创建Window,进行动画显示时,我需要的是一个按钮上面覆盖的Window画的圆形扩散效果,要大到超过窗口边缘的效果。而我的绘制区域,却只能在窗口内部各种着急啊~~,终于在看WindowManager.addView(View, WindowManager.LayoutParams), 看WindowManager.LayoutParams的参数中的flag受到启发,把FLAG_LAYOUT_INSCREEN改成了FLAG_LAYOUT_NO_LIMITS后,终于绘制区域不受限制啦,达到效果了。


通过在WindowManager中添加View时,设置layoutParameters时,指定flag的值,其中有带有FLAG_LAYOUT_IN_SCREEN 为限制绘制在窗口内部, 而

FLAG_LAYOUT_NO_LIMITS

没有限制绘制的区域。

为绘制在窗口内部。

WindowManager.LayoutParams

下面的两个参数对以后能够

intFLAG_LAYOUT_IN_SCREENWindow flag: place the window within the entire screen, ignoring decorations around the border (such as the status bar).
intFLAG_LAYOUT_NO_LIMITS


Window flag: allow window to extend outside of the screen.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值