4 Stimmen

Wie erhalte ich die Android-Ressourcen-ID von einer dynamisch erstellten (in Java) Layer-Liste / LayerDrawable?

Die "Lösung #2 (dynamisch)" in diesem Frage/Antwort-Beitrag:

zwei Bilder in Android überlagern, um eine Bildansicht zu erstellen

kommt dem, was ich tun möchte, sehr nahe, nämlich dynamisch eine Ebenenliste erstellen (für ein Benachrichtigungssymbol in der Statusleiste möchte ich mein Symbol in Ebenen aufbauen), aber die Symbolzuweisung in der Benachrichtigungs-API erfordert eine Ressourcen-ID (die ich von einem Dienst aus aufrufen möchte).

Ich kann nicht herausfinden, wie ich eine dynamische Ebenenliste erstellen kann, ohne Hunderte von Ebenenlisten-.xml-Dateien zu erstellen (für die verschiedenen Kombinationen von Symbolen, die ich gerne anzeigen möchte). Daniels "Lösung #1" funktioniert wunderbar für die statischen .xml-Dateien, aber ich bin auf der Suche nach einer eleganteren, dynamischen Lösung.

In dem obigen Beitrag, der Code-Schnipsel:

  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);

scheint das zu sein, was ich will, aber ich weiß nicht oder verstehe nicht, wie ich das neue layerDrawable meinem Benachrichtigungssymbol (das eine Ressourcen-ID benötigt) "zuweisen" kann.

Danke an alle... Stackoverflow ist eine wunderbare Ressource!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X