Android監(jiān)聽鍵盤顯示和隱藏
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括昭蘇網(wǎng)站建設(shè)、昭蘇網(wǎng)站制作、昭蘇網(wǎng)頁(yè)制作以及昭蘇網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,昭蘇網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到昭蘇省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!問(wèn)題概況:橫板cocos2dx游戲,點(diǎn)擊輸入框彈出鍵盤時(shí),界面要求跟隨網(wǎng)上平易,不能擋住輸入框。這種問(wèn)題只出現(xiàn)在非全屏鍵盤到情況下。
方案1:mainActivity重寫onconfigurationChanged,監(jiān)聽屏幕方向旋轉(zhuǎn),添加Android:configChanges="orientation|keyboard"。
缺點(diǎn)全屏下無(wú)效,如果設(shè)置為非全屏,
這樣會(huì)顯示系統(tǒng)狀態(tài)欄。否掉!
方案2:彈出鍵盤時(shí)勢(shì)必引起layout布局的變化,監(jiān)聽布局的變化然后計(jì)算偏移,即可算出是否時(shí)顯示或隱藏鍵盤。
//獲取rootview mRoot =this.getWindow().getDecorView();
全局鍵盤顯示和隱藏不會(huì)觸發(fā)
//添加布局變化監(jiān)聽 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(); } } });
以上!另外對(duì)APP進(jìn)行在線全方位的安全性、兼容性測(cè)試,我都會(huì)用這個(gè):www.ineice.com。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。