Android监听键盘显示和隐藏-创新互联
Android监听键盘显示和隐藏
成都创新互联公司服务项目包括昭苏网站建设、昭苏网站制作、昭苏网页制作以及昭苏网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,昭苏网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到昭苏省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!问题概况:横板cocos2dx游戏,点击输入框弹出键盘时,界面要求跟随网上平易,不能挡住输入框。这种问题只出现在非全屏键盘到情况下。
方案1:mainActivity重写onconfigurationChanged,监听屏幕方向旋转,添加Android:configChanges="orientation|keyboard"。
缺点全屏下无效,如果设置为非全屏,
这样会显示系统状态栏。否掉!
方案2:弹出键盘时势必引起layout布局的变化,监听布局的变化然后计算偏移,即可算出是否时显示或隐藏键盘。
//获取rootview mRoot =this.getWindow().getDecorView();
全局键盘显示和隐藏不会触发
//添加布局变化监听 root.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() { @Override public void onGlobalLayout() { Rect rect = new Rect(); root.getWindowVisibleDisplayFrame(rect); int rootInvisibleHeight =root.getRootView().getHeight() - rect.bottom; if (rootInvisibleHeight<= 100) { //通知c++做想做的事 hideKeyBoardHandler(); } else { showKeyBoardHandler(); } } });
以上!另外对APP进行在线全方位的安全性、兼容性测试,我都会用这个:www.ineice.com。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享文章:Android监听键盘显示和隐藏-创新互联
浏览地址:http://scjbc.cn/article/dcsdei.html