2011-11-22 77 views
5

有沒有辦法將ActionBar中出現的徽標更改爲Activity而不是將其列在清單中?以編程方式更改出現在Android ActionBar中的徽標

的原因,我想問的是我對手機的應用,在那裏我建立在頂部類似類型的酒吧,在左上角使用ImageView類似ActionBar啓動器圖標。

我還允許用戶將該圖像更改爲手機或互聯網上的圖像。我目前正在使該應用在平板電腦上運行,並希望僅使用ActionBar,但不知道如何根據用戶更改圖像。 ActionBar類中沒有方法,我無法從資源中找到修改圖標或徽標的方法。

任何人都知道這是可能的還是可以建議的東西,我可以嘗試?

回答

10

API 14引入了setIconsetLogo方法。

至於11至13有沒有容易方式。

您可以使用自定義導航並通過讓自己的佈局模仿其功能來隱藏常規圖標/徽標。

存在其中允許指定要被使用的替代佈局資源操作欄風格homeLayout屬性,但它將始終拋出ClassCastException,因爲它會立即在充氣時(bug #21842)轉換爲一個內部類。

+3

該屬性不打算公開。哎呀。 :) – adamp

12

此前在的setIconsetLogo方法是傑克提到API 14的介紹,你似乎可以通過抓取的android.R.id.home視圖和設置新繪製的改變動作條的標誌。

ImageView logo = (ImageView) findViewById(android.R.id.home); 
logo.setImageDrawable(drawable); 
相關問題