使用ImmersionBar狀態列沉浸框架心得

2021-09-30 15:52:29 字數 1056 閱讀 5884

用這個框架總體來說還是挺不錯的,非常方便的處理狀態列,可以省去一些時間去處理各種相容問題。不過在我現在的專案裡面,在用在聊天介面的時候就有碰到了幾個小問題。第乙個問題:標題欄被頂上去,這個是用了預設配置的

檢視了一下源**,發現是配置immersionbar導致上面的問題的,由於其他地方需要這樣的配置,所以我就沒改配置,直接在當前頁面禁用immersionbar算了,發現效果正常,是自己想要的,但是這個狀態列太醜了,更何況跟外面的樣式。

後來直接在當前頁面重新使用immersionbar配置狀態列

immersionbar.with(this)

.statusbardarkfont(statusbardarkfont()).init();

執行發現,第二個問題來了: 標題欄跟狀態列重疊了,底部輸入的時候底部導航欄也不彈起。尷尬

後來查閱了一番,發現在根布局設定了這個屬性,就解決了上面的問題了。

fitssystemwindows這個屬性的作用:

根據官方文件,如果某個view 的fitssystemwindows 設為true,那麼該view的padding屬性將由系統設定,使用者在布局檔案中設定的padding會被忽略。系統會為該view設定乙個paddingtop,值為statusbar的高度。fitssystemwindows預設為false。

ImmersionBar的乙個坑

今天寫 時發現殺掉activitya 1後再啟動activitya 2時,因為activitya 2的immersionbar先初始化了,之後activitya 1的ondestroy才執行,而關鍵點是發現ondestroy中確實是需要殺掉的activitya 1,而immersionbar也不是單...

使用Reachbility判斷當前網路狀態

我們使用程式時,有時會斷網,但我們並不知道,程式也沒有說明。作為程式設計師,是肯定要為使用者考慮的,廢話不多說,上 reachability nettest 定義乙個reachability 接著呢,如何判斷有網沒網,有的時候,在家中,路由器開著,我們手機也連著wifi,我們就會認為連著網,但我們不...

使用Observable實現Vue全域性狀態共享

專案不大,又不想用vuex,那麼使用observable來實現狀態共享也不失為乙個選擇.vue.observable object 2.6.0 新增 此api為2.6版本新增,那麼低版本是不相容,會報出以下錯誤 vue default.observable is not a funcion解決方法是...