Zugriff auf Ressourceninhalte ohne Aktivitätskontext
Wenn Sie vor der Aktivitätsinitialisierung auf Ressourceninhalte zugreifen müssen, kann es zu einer Herausforderung kommen, da die Aktivitäten bereitgestellt werden die getResources()-Methode. So können Sie diese Einschränkung umgehen:
Erstellen Sie eine Anwendungsunterklasse:
Erweitern Sie die Anwendungsklasse, um eine benutzerdefinierte Anwendungsklasse zu erstellen. Zum Beispiel:
public class App extends Application {}
Legen Sie die AndroidManifest-Referenz fest:
Legen Sie in AndroidManifest.xml das android:name-Attribut der <application android:name=".App" ...>
...
</application></p>
</li>
<li>
<p><strong>Statischer Kontext und Abrufmethode:</strong></p>
<p>Speichern Sie in der onCreate()-Methode Ihrer App-Klasse den Kontext in ein statisches Feld und erstellen Sie eine statische Methode, um es zurückzugeben. Zum Beispiel:</p>
<pre class="brush:php;toolbar:false">public class App extends Application {
private static Context mContext;
@Override
public void onCreate() {
super.onCreate();
mContext = this;
}
public static Context getContext() {
return mContext;
}
}
Ressourcenzugriff:
Jetzt können Sie den Kontext und die Ressourcen abrufen mit:
Context context = App.getContext(); Resources resources = context.getResources();
Mit dieser Methode können Sie aus statischen Kontexten auf Ressourceninhalte zugreifen, in denen sich Aktivitätsobjekte möglicherweise nicht befinden verfügbar.
Das obige ist der detaillierte Inhalt vonWie greife ich ohne Aktivitätskontext auf Ressourceninhalte zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!