Toolbar的詳細(xì)使用

Toolbar是作為5.0之后替代ActionBar的一個(gè)控件,平時(shí)也是會(huì)經(jīng)常的使用toolbar這個(gè)東西,但是也只是基本的使用,太深入詳細(xì)的功能也沒有去嘗試,最近抽時(shí)間做了一個(gè)詳細(xì)的學(xué)習(xí)整理,做一個(gè)記錄.

簡(jiǎn)單使用

如果像使用toolbar,首先要把a(bǔ)ctionbar干掉,像這樣

android:theme="@style/Theme.AppCompat.Light.NoActionBar"

這個(gè)可以加在applaction標(biāo)簽,這樣全局沒有toolbar了,或者指定activity,這樣這個(gè)活動(dòng)就沒有toolbar了

然后,這就是一個(gè)最簡(jiǎn)單的toolbar


然后是運(yùn)行效果圖


圖中的標(biāo)題是通過xml設(shè)置,或者java設(shè)置的

app:title="這是一個(gè)toolbar"

toolbar.setTitle("一個(gè)丑陋的標(biāo)題");

其他屬性

上面就是這個(gè)東西的簡(jiǎn)單使用,但是效果沒法看的..再來使用一下他的其他屬性

backgroud="#f00" 這個(gè)不用說,設(shè)置背景顏色

app:titleTextColor="#fff"? 標(biāo)題顏色

app:subtitleTextColor="#55000000"? 小標(biāo)題顏色

subtitle="小標(biāo)題"? ?小標(biāo)題

logo? ? ? logo...

app:navigationIcon="@mipmap/back"? 導(dǎo)航圖標(biāo)

然后效果圖如下


menu的設(shè)置


我們先搞一個(gè)菜單出來,注意,菜單有一個(gè)屬性:

app:showAsAction? 然后他有這么幾個(gè)可選值

1、always:使菜單項(xiàng)一直顯示在ToolBar上,優(yōu)先級(jí)最高,加入你有10個(gè)menu,他會(huì)全都放到上面直到放不下為止,包括標(biāo)題等都會(huì)被擠掉(菜單鍵不會(huì)) ,而且如果你為這個(gè)menu設(shè)置了icon,他會(huì)有限限時(shí)icon,沒有icon的話會(huì)限時(shí)字

2、ifRoom:如果有足夠的空間,這個(gè)值會(huì)使菜單項(xiàng)顯示在ToolBar上。?

3、never:使菜單項(xiàng)永遠(yuǎn)都不出現(xiàn)在ToolBar上,在…的子項(xiàng)中顯示。?

4、withText:使菜單項(xiàng)和它的圖標(biāo),菜單文本一起顯示。

然后在activity中重寫


然后看效果


全部設(shè)置為never


設(shè)置為ifRoom的時(shí)候

然后必須要設(shè)置點(diǎn)擊事件


這樣toolbar的菜單就基本可以使用了,但是還有一些細(xì)節(jié)設(shè)置

其他問題

1,三個(gè)丑陋的黑點(diǎn)怎們改變


在主題中加入最下面的一行


效果

2,我想像微信一樣修改子菜單的樣式怎們搞?


先搞個(gè)主題出來

這個(gè)主題的是直接繼承ThemeOverlay.AppCompat.Dark,是支持包的一個(gè)主題


然后在toolbar的布局中加入這么一個(gè)屬性

然后就變了效果


效果圖

3,我想修改氣泡彈出的位置怎們搞?


把給them增加以上內(nèi)容


效果

4然后我們突然發(fā)現(xiàn)子菜單沒有圖標(biāo),神們鬼?


在activity中加這么一段代碼,對(duì),直接拷貝過去


完美解決

5,這種效果怎們做?


toolba是繼承自viewGroup的一個(gè)子類,請(qǐng)?jiān)谒锩娣乓粋€(gè)textview,然后居中即可.復(fù)雜的布局同理

這些差不多就是toolbar的一些使用了,這是一個(gè)定制性非常高的控件,早日替換actionbar

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 未經(jīng)本人授權(quán),不得轉(zhuǎn)載!否則必將維權(quán)到底 Toolbar 可以實(shí)現(xiàn)所有 ActionBar 的功能,并且可定制性更...
    程序員K哥閱讀 3,176評(píng)論 0 6
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,291評(píng)論 25 708
  • 不怕跌倒,所以飛翔 ToolBar ToolBar其實(shí)是一個(gè)ActionBar的變體,大大的擴(kuò)展了ToolBar,...
    筆墨Android閱讀 1,587評(píng)論 0 5
  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個(gè)線程,因...
    小菜c閱讀 7,378評(píng)論 0 17
  • 沒有記錄就沒有發(fā)生,把小日子記錄在手帳里,我的手帳就是單純的記錄,從模仿到購(gòu)買膠帶、貼紙等工具,入坑后,只是堅(jiān)...
    娟娟呀閱讀 408評(píng)論 0 0

友情鏈接更多精彩內(nèi)容