Heim >Java >javaLernprogramm >Wie greife ich mit „getIdentifier()' namentlich auf Android-Ressourcen zu?

Wie greife ich mit „getIdentifier()' namentlich auf Android-Ressourcen zu?

Susan Sarandon
Susan SarandonOriginal
2024-12-24 19:49:14733Durchsuche

How to Access Android Resources by Name Using `getIdentifier()`?

Zugriff auf Ressourcen über den Namen

Bei der Arbeit mit Ressourcen in einer Android-Anwendung ist es häufig erforderlich, auf sie über ihren Namen und nicht über ihre Ganzzahl zuzugreifen Ausweise. Dies kann beispielsweise nützlich sein, wenn Sie Ressourcen basierend auf dem Gebietsschema des Benutzers oder anderen Faktoren dynamisch laden müssen.

Zu verwendende Methode

Zugriff auf eine Ressource durch Um den Namen zu ermitteln, verwenden Sie die Methode getIdentifier() der Klasse Resources. Diese Methode benötigt drei Parameter:

  • name: Der Name der Ressource.
  • defType: Der Typ der Ressource. Dies kann „drawable“, „string“, „id“ oder ein anderer gültiger Ressourcentyp sein.
  • defPackage: Das Paket, zu dem die Ressource gehört.

Beispiel

Das folgende Code-Snippet zeigt, wie man über seinen Zugriff auf eine zeichnbare Ressource zugreift Name:

int drawableResourceId = this.getResources().getIdentifier("my_drawable", "drawable", this.getPackageName());

In diesem Beispiel ist „dies“ eine Aktivität. Sie können „drawable“ durch den gewünschten Ressourcentyp ersetzen, z. B. „string“ oder „id“.

Überlegungen zur Leistung

Es ist wichtig zu beachten, dass die Verwendung von getIdentifier( ) für den Zugriff auf Ressourcen ist langsamer als die Verwendung der ganzzahligen IDs. Daher wird empfohlen, diese Methode nur bei Bedarf zu verwenden.

Offizielle Dokumentation

Weitere Informationen finden Sie in der offiziellen Android-Dokumentation zu Resources.getIdentifier(): [ https://developer.android.com/reference/android/content/res/Resources#getIdentifier(java.lang.String, java.lang.String, java.lang.String)](https://developer.android.com/reference/android/content/res/Resources#getIdentifier(java.lang.String, java.lang.String, java.lang.String))

Das obige ist der detaillierte Inhalt vonWie greife ich mit „getIdentifier()' namentlich auf Android-Ressourcen zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn