2013-02-18 96 views
1

我正在使用ActionBar,並且因爲我具有消息傳遞功能,所以我想在ActionBar中通知用戶他是否有任何未讀消息。它看起來有點像這樣:ActionBar(Sherlock)在頂部顯示帶有消息數量的圖標

Messages unread - example notification

不過,我似乎無法找到,如果這是支持的。那麼,有沒有人知道這是否被支持,以及如何以這種方式在現有的ActionBar項目上添加一個圖標?

+0

你碰巧得到這個啓動和運行,如果是的話,你會願意更新我們的片段瓦特。你最終做了什麼? – ChuckKelly 2013-02-28 06:41:26

+0

@ChuckKelly最後,我使用了ActionBar項的Text部分來顯示新消息的數量。如果沒有我只是把「」字符串。 – kape123 2013-03-06 01:50:43

回答

1

到這一點,最好的辦法是創建修改可繪製自己和設置它作爲該特定ActionBar圖標的來源。爲此,您可以撥打invalidateOptionsMenu()並從onCreateOptionsMenu(Menu)內重新設置圖標。您可以使用LayerDrawable將數字疊加到實際圖標可繪製的頂部。

+1

您也可以使用'setDisplayOptions(DISPLAY_SHOW_CUSTOM)'和'setCustomView(view)' – Karakuri 2013-02-18 22:05:01

+0

在操作欄中放置任意視圖嗎?請您提供一些代碼嗎? – TharakaNirmana 2013-12-11 07:46:15

+0

如果你打算使用'setCustomView(view)',只需要ImageView子類和'onDraw()'方法,將所需的數字繪製到畫布上。 – 2013-12-11 15:32:04

1

我不認爲它是內置的API的東西,但是有一個badge-button一個簡單的實現,可以幫助你

相關問題