真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android底部導(dǎo)航,Android底部導(dǎo)航框架

Android 沉浸式/透明式狀態(tài)欄、導(dǎo)航欄

Android 從4.4開始引進(jìn)透明狀態(tài)欄和導(dǎo)航欄的概念,并且在5.0進(jìn)行了改進(jìn),將透明變成了半透明的效果。雖然此特性最早出現(xiàn)在ios,但不否認(rèn)效果還是很贊的。

創(chuàng)新互聯(lián)建站從2013年成立,先為昌邑等服務(wù)建站,昌邑等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為昌邑企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

至于4.4以下的手機(jī),就不要考慮此特性了,好在4.4以下的手機(jī)份額已經(jīng)非常小了。

我們先來看一下透明狀態(tài)欄的實(shí)現(xiàn),兩種常見效果圖如下:

虛擬導(dǎo)航欄并不是所有的手機(jī)都有,華為的手機(jī)多比較常見,就是上圖屏幕底部按鈕那塊區(qū)域。設(shè)置導(dǎo)航欄和狀態(tài)欄類似:

這是官方的解釋,大致意思就是我們?cè)诓季值淖钔鈱釉O(shè)置 android:fitsSystemWindows="true",會(huì)在屏幕最上方預(yù)留出狀態(tài)欄高度的padding。

由于fitsSystemWindows屬性本質(zhì)上是給當(dāng)前控件設(shè)置了一個(gè)padding,所以我們?cè)O(shè)置到根布局的話,會(huì)導(dǎo)致狀態(tài)欄是透明的,并且和窗口背景一樣。

但是多數(shù)情況,我們并不在根布局設(shè)置這個(gè)屬性,我們想要的無外乎是讓內(nèi)容沉浸在狀態(tài)欄之中。所以我們經(jīng)常設(shè)置在最上端的圖片背景、Banner之類的,如果是Toolbar的,我們可以使用一層LinearLayout包裹,并把這個(gè)屬性設(shè)置給LinearLayout,這樣就可以避免Toolbar的內(nèi)容下沉了。如:

上述方法可以解決普通頁面的透明式狀態(tài)欄需求,如有復(fù)雜需求可以參考下面這些:

Android 系統(tǒng)狀態(tài)欄沉浸式/透明化完整解決方案

Android 沉浸式狀態(tài)欄的實(shí)現(xiàn)

Android沉浸式狀態(tài)欄(透明狀態(tài)欄)最佳實(shí)現(xiàn)

還有開源庫(kù)推薦: ImmersionBar

Android底部中間凸起導(dǎo)航欄設(shè)計(jì)(簡(jiǎn)單的自定義底部導(dǎo)航欄)

git地址 ,如果對(duì)您有幫助,麻煩點(diǎn)個(gè)贊~ 謝謝~

框架設(shè)計(jì)思想

需求分析

實(shí)現(xiàn)思路

通過resetHeight達(dá)到底部凸起效果

外部容器封裝

Android知識(shí)串講(1) 底部導(dǎo)航欄遮擋|轉(zhuǎn)屏鎖定|ActionBar隱藏

方法一:隱藏

Android中布局內(nèi)容被底部系統(tǒng)導(dǎo)航欄遮擋

方法二:內(nèi)容上移

Android手機(jī)底部NavigationBar擋住界面的解決方法

在 Manifest.xml 文件中設(shè)置 Activity 的屬性

Android布局界面隱藏頂部導(dǎo)航欄

Android隱藏和顯示虛擬導(dǎo)航欄

Android 獲取手機(jī)存儲(chǔ)總大小,系統(tǒng)占用空間

Android 獲取屏幕寬度和高度的幾種方法

Android 獲取電池相關(guān)信息

Android電量計(jì)重要的類及函數(shù)介紹

安卓5.0后獲取所有運(yùn)行的進(jìn)程信息

Android獲取內(nèi)存(RAM)大小信息

android 幾種殺進(jìn)程的方式

Android開發(fā)中 獲取App緩存大小以及清除緩存

Looper.getMainLooper()使用誤區(qū)

Android中通過資源文件獲取drawable的幾種方法

Fragment向Activity傳遞值

注意:

Android底部彈窗漏出底部導(dǎo)航欄/未能遮擋/底部透明了/未置底的問題

xxx耀10上面...底部漏出來了。另外一個(gè)項(xiàng)目也是類似彈窗,但是沒有這個(gè)問題。

然后對(duì)比了下這個(gè)風(fēng)格文件,發(fā)現(xiàn)是 是否懸浮在Activity之上 的問題:

item name="android:windowIsFloating"true/item設(shè)置為true就行了。

不過發(fā)現(xiàn)一個(gè)現(xiàn)象就是當(dāng)鎖屏再打開的時(shí)候顯示就又正常了...也就是在某個(gè)生命周期里面做了一些事情(具體的先不管了哈。記錄下...)

使用風(fēng)格文件的地方:

正在思考自己嘗試封裝彈窗(計(jì)劃包括分享彈窗,更新彈窗,獎(jiǎng)勵(lì)彈窗等,逐步來)。這個(gè)大概是自定義View差不多了再開始嘗試搞....感覺從開始學(xué)習(xí)了好久,才完成了個(gè)人計(jì)劃的一小半....

超簡(jiǎn)單,幾行代碼搞定Android底部導(dǎo)航欄

咳咳,答應(yīng)過年增加新功能的,沒想到拖到現(xiàn)在,延遲了一個(gè)來月,尷尬,尷尬

那個(gè),我們先忽略這尷尬的事情吧,進(jìn)入正題才是最重要滴

老規(guī)矩,先上效果圖:

跟原來的圖有個(gè)很明顯的區(qū)別,你們也一定都發(fā)現(xiàn)了,對(duì)不對(duì)。那么顯眼的小紅點(diǎn),一定都看到了吧。

當(dāng)然除了這個(gè),還增加了一項(xiàng)功能,雖然不是很明顯,但相信也有小伙伴發(fā)現(xiàn)了吧,截圖的這倆手機(jī)屏幕明顯大小不同,但是底部導(dǎo)航欄的大小還是相差不大滴。

是的,你們沒有看多,這次不僅增加了小紅點(diǎn)功能,還增加了底部導(dǎo)航欄的適配,你沒有聽錯(cuò),以后底部導(dǎo)航欄也不用那些dp、sp了,都按照UI妹子們標(biāo)注的px來就可以了,再也不用為了底部導(dǎo)航欄去跟UI妹子解釋啥叫dp了。

好了,效果圖展示完了,現(xiàn)在該進(jìn)入枯燥的使用介紹了。

由于這次改動(dòng)有點(diǎn)大,所以,先介紹下上個(gè)穩(wěn)定版本的用法,到底是用最新的,還是用原來的,就看各位小伙伴的意愿了

上個(gè)穩(wěn)定版本是1.1.3的,引用方式如下

compile 'com.hjm:BottomTabBar:1.1.3'

具體用法如下(備注都加好了,我也就不多廢話了):

最新版本是1.2.2的,引用方式如下

compile 'com.hjm:BottomTabBar:1.2.2'

其實(shí)1.2.0與1.1.3區(qū)別并不大,只有4點(diǎn)改動(dòng):

現(xiàn)在默認(rèn)的,分割線高度都是設(shè)置的1個(gè)像素。這里以后也固定都用這個(gè)默認(rèn)的高度了,不再對(duì)外提供修改的方法。

這就是新增加的適配了,多的也不說了,你們都懂的

標(biāo)準(zhǔn)尺寸,就是UI妹子給你提供的效果圖的屏幕尺寸,只要在init()方法里添加上標(biāo)準(zhǔn)尺寸,你就可以放肆的使用px了

這個(gè)方法就是控制小紅點(diǎn)顯示的方法了,index就是需要顯示或者隱藏小紅點(diǎn)的TabItem,isShow是一個(gè)boolean類型的參數(shù),他是控制小紅點(diǎn)是否顯示的,如果為true,就會(huì)顯示小紅點(diǎn);如果為false,就會(huì)隱藏小紅點(diǎn)

1.2.2版本新增了兩個(gè)方法

介紹到這里,超簡(jiǎn)單的底部導(dǎo)航欄,第二階段就可以告一段落了。以后還會(huì)持續(xù)優(yōu)化,完善的。

第三階段我打算封裝一下有中間凸起的底部導(dǎo)航欄,這個(gè)功能我本地已經(jīng)做了,但是封裝進(jìn)去的時(shí)候,封裝的不理想,這次就沒有上線,留作下次了。

最后,再上個(gè) GitHub 地址


新聞名稱:android底部導(dǎo)航,Android底部導(dǎo)航框架
本文網(wǎng)址:http://weahome.cn/article/dscjgod.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部