完美解決虛擬按鍵遮蓋底部視圖的問題
Android部分手機(jī)會(huì)有虛擬按鍵,而沒有實(shí)體按鍵,例如華為系列的手機(jī)。
然而在開發(fā)過程中,有時(shí)候會(huì)涉及底部視圖的開發(fā),最終的結(jié)果卻因?yàn)樘摂M按鍵的關(guān)系,結(jié)果底部視圖被虛擬按鍵給遮蓋住了。
在這里,分為兩種情況,一種是Activity繼承普通的Activity,一種是Activity繼承AppcompatActivity。
第一種情況的解決方案:(繼承普通的Activity)
直接在配置文件Androidmanifest.xml里對相應(yīng)的Activity設(shè)置樣式,
Theme 如果設(shè)置成Theme.NoTitleBar或者Theme.Black.NoTitleBar的話,默認(rèn)是黑色,但是可以解決華為虛擬按鍵的問題,如果設(shè)置成Theme.Light.NoTitleBar,默認(rèn)是白色,也可以解決該問題。
第二種情況的解決方案:(繼承AppcompatActivity的情況)
因?yàn)槔^承AppcompatActivity的Activity是需要設(shè)置v7包里面的樣式,不能設(shè)置系統(tǒng)的,所以我們自定義一個(gè)樣式,繼承于v7包里面的樣式。
直接在res資源文件目錄下新建一個(gè)values-v19
然后在values文件夾下面的style.xml里面設(shè)置個(gè)樣式,繼承于Theme.Appcompat,例如叫Theme.Appcompat.abc,然后在values-v19文件夾下面的style.xml里面同樣設(shè)置Theme.Appcompat.abc,只不過要多設(shè)置兩個(gè)屬性,一個(gè)是
<item name="android:windowTranslucentNavigation">true</item>
這個(gè)屬性是設(shè)置底部虛擬按鍵透明的,可以解決遮蓋視圖的問題,但是它是透明的,虛擬按鍵本身是黑色的,你可能因?yàn)槟愕拇绑w背景是白色的,所以下面虛擬按鍵的背景就變成白色了,所以這時(shí)候要多設(shè)置一個(gè)屬性
<!--Window的背景色--> <item name="android:windowBackground">@android:color/black</item>
這個(gè)是設(shè)置窗體背景顏色的,這里是設(shè)置為虛擬按鍵默認(rèn)的黑色,如果你想把虛擬按鍵背景設(shè)置成你app的主題顏色,那可以直接設(shè)置這個(gè)屬性,改一下顏色就行了,暫時(shí)沒有圖片展示,下次補(bǔ)上。就此解決。
以上這篇完美解決虛擬按鍵遮蓋底部視圖的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Android編程實(shí)現(xiàn)手機(jī)拍照的方法詳解
這篇文章主要介紹了Android編程實(shí)現(xiàn)手機(jī)拍照的方法,結(jié)合實(shí)例形式分析了Android實(shí)現(xiàn)手機(jī)拍照的操作步驟與具體細(xì)節(jié),需要的朋友可以參考下2016-11-11Android 監(jiān)聽Notification 被清除實(shí)例代碼
本文主要介紹Android 監(jiān)聽Notification 事件,這里給大家提供實(shí)例代碼進(jìn)行參考,有需要的小伙伴可以參考下2016-07-07關(guān)于OkHttp中response.body().string()的用法解析
這篇文章主要介紹了關(guān)于OkHttp中response.body().string()的用法解析,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06Android開發(fā)使用WebView打造web app示例代碼
這篇文章主要介紹了Android開發(fā)使用WebView打造web app的關(guān)鍵示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03Android自定義控件實(shí)現(xiàn)支付寶記賬餅圖
這篇文章主要為大家詳細(xì)介紹了Android自定義控件實(shí)現(xiàn)支付寶記賬餅圖,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04Android studio實(shí)現(xiàn)加法軟件
這篇文章主要為大家詳細(xì)介紹了Android studio實(shí)現(xiàn)加法軟件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03Flutter使用NetworkImage實(shí)現(xiàn)圖像顯示效果
這篇文章主要為大家介紹了如何在Flutter中使用NetworkImage實(shí)現(xiàn)圖像顯示效果,文中的示例代碼講解詳細(xì),快跟隨小編一起學(xué)習(xí)一下吧2022-04-04Android應(yīng)用程序保持后臺(tái)喚醒(使用WakeLock實(shí)現(xiàn))
本篇文章主要介紹了使用WakeLock使Android應(yīng)用程序保持后臺(tái)喚醒的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-04-04Android 開發(fā)使用Activity實(shí)現(xiàn)加載等待界面功能示例
這篇文章主要介紹了Android 開發(fā)使用Activity實(shí)現(xiàn)加載等待界面功能,結(jié)合實(shí)例形式詳細(xì)分析了Android基于Activity實(shí)現(xiàn)加載等待界面布局與功能操作技巧,需要的朋友可以參考下2020-05-05