一招解决AIR因StageText引发的下拉通知栏不隐藏的问题
发现 在AIR23中 如果使用StageText的时候 当输入法面板弹出 或者是 进行输入确定之后,安卓里面的下拉通知栏不会完全隐藏,总是会留下部分,如下图所示
这种情况 只有再次手动下拉 然后隐藏才能成功隐藏。
通过测试发现,如果是竖屏的情况下 是不会出现这个问题的。所以考虑是因为AIR在对StageText进行渲染的时候,与横屏 竖屏相关。故采用暴力一点的方式进行解决。
既然竖屏不会出现这个问题,那么我们在xx-app.xml里面的aspectRatio 设置为 <aspectRatio>portrait</aspectRatio> 竖屏。
但是我们的游戏是横屏怎么办。那么就在程序里面加上 stage.setAspectRatio( “landscape” ); 这样的话 就不会出现上述的问题了。不过在非真机上测试的话 稍微有点麻烦了。
另一种方案是 降低SDK版本 目前测试AIR22没有这个问题,截止此文章 AIR24 beta版本已经给出,同样会出现这个问题
注:今天(2016/12/14)更新的AIR24版本此问题得到解决 但和AIR22的差异在于 当StageText获得焦点的时候24版本会出现状态栏 而22不会
PS:不过想想 应该可以用ANE来解决。但个人觉得没有必要。是否有其他解决方式,待续…