활동 컨텍스트 없이 리소스 콘텐츠 액세스
활동 초기화 전에 리소스 콘텐츠에 액세스해야 하는 경우 활동이 제공하기 때문에 문제가 발생할 수 있습니다. getResources() 메소드. 이 제한을 우회할 수 있는 방법은 다음과 같습니다.
애플리케이션 하위 클래스 생성:
애플리케이션 클래스를 확장하여 사용자 정의 애플리케이션 클래스를 생성합니다. 예:
public class App extends Application {}
AndroidManifest 참조 설정:
AndroidManifest.xml에서 <application android:name=".App" ...>
...
</application></p>
</li>
<li>
<p><strong>정적 컨텍스트 및 검색 방법:</strong></p>
<p>앱 클래스의 onCreate() 메서드에서 컨텍스트를 저장합니다. 정적 필드에 추가하고 이를 반환하는 정적 메서드를 만듭니다. 예를 들어:</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;
}
}
리소스 액세스:
이제 다음을 사용하여 컨텍스트와 리소스를 얻을 수 있습니다.
Context context = App.getContext(); Resources resources = context.getResources();
이 방법을 사용하면 활동 개체가 있을 수 있는 정적 컨텍스트에서 리소스 콘텐츠에 액세스할 수 있습니다. 사용할 수 없습니다.
위 내용은 활동 컨텍스트 없이 리소스 콘텐츠에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!