「解決方案#2(動態)」這個提問/回答後:如何從動態創建的(在Java中)layer-list/LayerDrawable獲取Android資源ID?
overlay two images in android to set an imageview
非常接近我想要做的,這是動態創建圖層列表(一個狀態欄通知圖標,我想在圖層中構建我的圖標),但通知API中的圖標分配需要資源ID(我想從服務調用)。
我無法弄清楚如何在不構建數百個層列表.xml文件(針對我希望能夠顯示的各種圖標組合)的情況下構建動態構建圖層列表。 Daniel的「解決方案#1」對於靜態的.xml文件非常有用,但我正在尋找更優雅,動態的解決方案。
在上述職位,代碼片段:
Resources r = getResources();
Drawable[] layers = new Drawable[2];
layers[0] = r.getDrawable(R.drawable.t);
layers[1] = r.getDrawable(R.drawable.tt);
LayerDrawable layerDrawable = new LayerDrawable(layers);
似乎是我想要的,但我不知道或者不知道如何「分配」新layerDrawable我的通知圖標(這需要資源ID)。
感謝所有... stackoverflow是一個很好的資源!
謝謝,Aleadam(亞當?)!對不起,我以前沒有看到您的回覆;)。我從你的第一句話猜測,我只能填充我的狀態欄圖標一個靜態創建的資源:(我希望有一種方法來保持不必在層列表.xml文件中構建我所有的圖標組合。並且再次感謝您的回覆--Sean – 2011-06-10 19:49:52
我相信資源是引用通知圖標的唯一方式,但您應該只需要爲每個屏幕密度添加一個圖標。 – Aleadam 2011-06-11 04:10:39