Android:在没有Activity或Context refeerence的情况下访问资源

我发布这个问题,希望能得到某种明确的答案.

没有活动或上下文引用是否真的无法访问资源.当所有需要的是访问某些值或资产或与UI无关的字符串时,传递这些引用会导致过于复杂的代码.

加上所有那些潜在的悬挂参考.

此外,这完全破坏了各种设计模式,例如单身,在获取实例时必须提供参数.

提出静态参考

那么有一种方式或整个社区是否只是忍受这个问题.

解决方法:

您的资源捆绑到一个上下文,这是事实,你不能改变它.

这是你可以做的:

扩展应用程序,获取应用程序上下文并将其用作静态帮助程序.

public class App extends Application {

    private static Context mContext;

    public static Resources getResources() {
        return mContext.getResources();
    }

    public void onCreate() {
        super.onCreate();
        mContext = getApplicationContext();
    }
}

你的清单:

<application
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:name="your.package.path.to.App">

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...