成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

安卓webview中鍵盤遮擋輸入框如何解決-創(chuàng)新互聯(lián)

關(guān)鍵詞:安卓原生、unity、webview、鍵盤遮擋輸入框、沉浸式狀態(tài)欄。

創(chuàng)新互聯(lián) - 綿陽機房托管,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機,成都云主機,西南云主機,綿陽機房托管,西南服務(wù)器托管,四川/成都大帶寬,機柜大帶寬租用·托管,四川老牌IDC服務(wù)商

首先是最簡單的情況,當我們app有一個比較靠下的輸入框時,喚出鍵盤會遮擋住輸入框。

這種情況的對應(yīng)方式很簡單,只需要找到安卓項目清單文件AndroidManifest.xml,對activity進行android:windowSoftInputMode值進行設(shè)定就可以了,設(shè)定為adjustPan或者adjustResize即可。

...

adjustPan或者adjustResize是兩種不同的輸入框適應(yīng)形式,下面附上非常簡略的區(qū)別對比:

adjustPan:整個頁面往上推。

adjustResize:能推的努力推。

更詳細的地方可以百度。

如果到這里你的問題解決了,那實在是太好了。不過如果你嘗試上述方案發(fā)現(xiàn)一點用沒有,太慘了,你踩了大雷了。

如果你的鍵盤遮擋與webview掛鉤了,換句話說:你的手機鍵盤是由webview里的輸入框調(diào)起的。

這個時候情況就很復雜了,因為它涉及到全屏模式(Fullscreen)這個東西,unity的話是打包時候的是否全屏的設(shè)置,在這里是一樣的概念。

Application或者activity搞了Fullscreen,或者使用了Immersive Mode、沉浸式狀態(tài)欄,或者unity打包時勾選了fullScreenMode。

如果你出現(xiàn)問題的頁面是非全屏模式的情況,activity設(shè)置adjustPan會失效,設(shè)置adjustResize沒有問題。

如果你出現(xiàn)問題的頁面是全屏模式的情況,adjustPan跟adjustResize這兩個屬性都會失效。

adjustPanadjustResize
全屏模式+webviewXX
非全屏模式+webviewX
任何模式+無webview

也就是說,如果你的程序不是全屏模式,但出現(xiàn)問題的頁面有webview,只需要在activity里把android:windowSoftInputMode設(shè)定成adjustResize就可以了。

如果你的程序好巧不巧,既是全屏模式,出現(xiàn)問題的頁面又有webview,你遇到的時2009年就被發(fā)現(xiàn)的一個谷歌的骨灰級bug:issue 5497。

https://issuetracker.google.com/issues/36911528

這個bug官方至2022年還沒有修復,那遇到這個問題我們怎么解決呢?

12年來很多的安卓開發(fā)前端開發(fā)同學不知道多少人跌進了這個坑,我們雖然沒有一個官方的解決方案,但是民間的解決方案當然存在。

先介紹兩種比較簡單粗暴的方案:

首先當然是取消全屏模式了,惹不起還躲不起嗎,爺不干了。直接一手取消全屏模式再給android:windowSoftInputMode設(shè)置成adjustResize,困難迎刃而解。當然這種方式領(lǐng)導們可能不會接受哈,實在是過于簡單粗暴了。

第二種方案就是比較迂回的方案了,如果這個webview展示的是咱們自己寫的網(wǎng)頁哈,就讓咱們自己的網(wǎng)頁下邊增加比較長的留白,給鍵盤留一點的空間。

當然如果這個webview咱們動不了,就只剩下最后一個獨苗苗——方案三了。

AndroidBug5497Workaround類

這也是各路大佬們一致偏愛的一種處理方式,只需要一個簡簡單單的AndroidBug5497Workaround類,優(yōu)雅,非常優(yōu)雅。

這是一個專門用來對應(yīng)“issue 5497”的一個類,使用方法也非常親民,只需要三步:

1、復制AndroidBug5497Workaround類到項目中。

2、在activity的onCreate方法中添加一句AndroidBug5497Workaround.assistActivity(this)。

然后就可以解決這個非常讓人頭痛的問題了!而且它在各個Android版本都沒問題,效果基本與設(shè)置了adjustResize差不多。

關(guān)于AndroidBug5497Workaround類的代碼,java版本與Kotlin版本都有,詳情可以百度,就不在文章中附送了哈。

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

分享名稱:安卓webview中鍵盤遮擋輸入框如何解決-創(chuàng)新互聯(lián)
文章路徑:http://jinyejixie.com/article6/geiog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設(shè)、網(wǎng)站收錄網(wǎng)頁設(shè)計公司、品牌網(wǎng)站建設(shè)、ChatGPT、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計
怀集县| 二手房| 湖南省| 邛崃市| 专栏| 沈阳市| 嫩江县| 乡宁县| 中宁县| 天峨县| 正镶白旗| 新宾| 博罗县| 乌苏市| 新建县| 玛曲县| 林口县| 清远市| 郁南县| 肃北| 永济市| 盐城市| 三明市| 慈利县| 和平县| 新野县| 巴林右旗| 洞口县| 鹰潭市| 永济市| 申扎县| 叙永县| 明光市| 廊坊市| 黄龙县| 平顶山市| 铅山县| 和硕县| 莱芜市| 芮城县| 蒙阴县|