代碼中設置 actionbar 上home等圖標顯示跟隱藏


今天在做項目的時候,遇到了一個問題,就是要把home在代碼中動態顯示跟隱藏。現在把方法記錄如下

我們可以使用

setDisplayOptions(mask, mask);

來設置home按鈕顯示的,它的具體用法如下

(1)如果只有一個參數,那么它就是直接設定顯示項,

如,

int options = DISPLAY_SHOW_HOME | DISPLAY_USE_LOGO;

setDisplayOptions(options);

那么,actionbar就會顯示home跟log按鈕,也就是,里面添加了誰,誰就顯示

(2)如果有兩個參數的話

int options = ActionBar.DISPLAY_SHOW_TITLE |ActionBar.DISPLAY_SHOW_HOME ;

int mask = ActionBar.DISPLAY_HOME_AS_UP | ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_SHOW_CUSTOM;

getSupportActionBar().setDisplayOptions(options, mask);

如上代碼,這時候actionbar會顯示home 跟title,其他的不會顯示

也就是只有當options在mask中被設置才能被顯示,也就是設置為true。

知識補充:

1.ActionBar默認如果沒有做任何設置,會顯示出一個箭頭(DISPLAY_HOME_AS_UP),一個logo(DISPLAY_SHOW_HOME),標題(DISPLAY_SHOW_TITLE)

2.單獨設置某項顯示方法如下

getActionBar().setDisplayHomeAsUpEnabled(true);

getActionBar().setDisplayShowCustomEnabled(true);

getActionBar().setDisplayShowHomeEnabled(true);

getActionBar().setDisplayShowTitleEnabled(true);

getActionBar().setDisplayUseLogoEnabled(true);

3.設置各個按鈕是否可點擊狀態

getActionBar().setHomeButtonEnabled(true);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM