Dieser Codeabrufen HiDensity ziehbar aus dem Paket (Wabe)
final ApplicationInfo ai = getPackageManager().getApplicationInfo("com.company.hello", 0);
final Drawable d = getPackageManager().getApplicationIcon(ai);
sogar auf meinem HiDensity HoneyComb Gerät ein 48x48 (MDPI) ziehbar retreive.
Da ich die ziehbar von Bitmap.createScaledBitmap vergrößern kann, ich frage, wie das hallo Dichte Symbol zu extrahieren, die bereits vorhanden ist. Die Methode getDrawableForDensity ist für SDK < 15 nicht verfügbar, aber ich bin nicht glücklich, eine Skalierungsfunktion für jedes Symbol aufzurufen, das ich zeichnen muss, wenn es im Paket kostenlos verfügbar ist.
Edit für Bounty
zu vergessen für eine Weile meines Gerät Anzeigedichte der Frage ist folgende: ein eigenes Paket gegeben, für die wir sicher wissen, ein 72x72-Symbol in den relativen hdpi res Ordnern haben, Wie kann ich dieses Symbol aus einem anderen Paket extrahieren?
THIS FUNCTION ist nicht in Wabenumgebung verfügbar.
Wofür verwenden Sie das Zeichenfeld, wenn Sie es einmal haben? Es scheint mir so, als könnten Sie die 'R.drawable.id' des Bildes benutzen, um es zu bekommen, welches automatisch das richtige für den aktuellen Bildschirm einnimmt, auf dem Sie gerade laufen. – FoamyGuy
Vielleicht verwirren Sie Größe mit Dichte (sie sind unterschiedlich). Sie sollten Ihre PNG-Ressourcen nicht skalieren (dies ist der Hauptzweck der Verwendung unterschiedlicher Auflösungszeichensätze). – Booger
Hallo FoamGuy Ich habe bereits versucht, das Symbol nach spezifischer ID zu extrahieren, aber das Ergebnis ist das gleiche: 48x48 Zeichen. Booger: Ich verwechsle nichts: Bei einem Paket möchte ich das 72x72 Zeichen, das ich kenne. Meine Bildschirmdichte ist HI_DENSITY und die Lösung kann getDrawalForDensity sein, ist aber nicht verfügbar. – lorenzoff