当前位置: 首页 > 面试题库 >

Java如何从静态上下文中获取资源内容?

韩善
2023-03-14
问题内容

我想先从xml文件中读取字符串,然后再执行setText小部件上的任何其他操作,那么如何在没有活动对象调用的情况下做到这一点getResources()呢?


问题答案:
  1. Application例如,创建的子类public class App extends Application {
  2. 在中设置标签android:name属性以指向你的新类,例如<application>AndroidManifest.xmlandroid:name=".App"
  3. onCreate()你的应用实例的方法中,将你的上下文(例如this)保存到一个名为的静态字段中,mContext并创建一个返回此字段的静态方法,例如getContext()
    这是它的外观:
public class App extends Application{

    private static Context mContext;

    @Override
    public void onCreate() {
        super.onCreate();
        mContext = this;
    }

    public static Context getContext(){
        return mContext;
    }
}

现在,你可以使用:App.getContext()每当你想要获取上下文时,然后使用getResources()(或App.getContext().getResources())。



 类似资料:
  • 问题内容: 我有一个函数试图将文件加载到对象,因为示例项目是这样说的。 我尝试使用,但仍无法编译。 我是Java的新手,所以我知道自己做错了。 问题答案: 它无法编译,因为使用资源名称(a ,而不是a )作为参数,以便使用类加载机制(从类路径)加载资源。与一起使用是没有意义的。如果要打开文件,只需使用或即可。 请参阅http://docs.oracle.com/javase/6/docs/api/

  • 我知道网上有很多这样的问题(特别是这里),但没有什么能真正帮助我解决问题。我正在使用spring mvc(spring version 3.1.0 Release)并且我想通过URL访问我的静态数据。 我的包: -src --main ---resources ----public 在public内部,我有一个test.xml文件。 这是我的web.xml 这是我的ServletContext.x

  • 更新:我想让媒体播放器是静态的,但是如果我设置为静态的,它就不工作了。请注意,我想要mediaPlayer static的原因是我想从其他类访问它。(台词评论。)这是我的代码: 我的代码的任何其他修复将不胜感激。顺便说一下,这些是我得到的错误: 线程“Thread-0”中出现异常Java . lang . illegalstateexception:Toolkit未在com . sun . Jav

  • 问题内容: 我在项目的根目录中有一个资源文件夹/程序包,我“不想”加载某个文件。如果我想加载某个文件,我将使用class.getResourceAsStream,我会很好的!我实际上想要做的是在资源文件夹中加载一个“文件夹”,循环访问该文件夹中的文件,并获取每个文件的流,并读取内容…假设在运行时之前未确定文件名… 我该怎么办?有没有一种方法可以获取jar文件中“文件夹”中文件的列表?请注意,带有资

  • 我需要从应用程序的根内部获得一个资源,当它打包到JAR中时。我的项目是这样的: 我使用以下代码: 在打包到jar之前运行时,它会发现文件很好(在ProjectRoot内部)。运行jar时,它找不到它,并将此路径转换为。 此代码: 在打包之前运行时,查找中的资源。打包后,它声称从中获取资源。 此代码: 我想做的只是将资源放在中,并且能够从jar外部(从IDE运行类文件时)和内部(使用Maven将文件

  • 运行时出现此代码错误,获取错误-:非静态变量,无法从静态上下文中引用此变量我应该如何解决此代码