[英]Reading text from resources in non-activity class in Android
我想从Android应用程序中的一个原始文本文件中读取一些文本,并在应用程序中显示该文本文件中的一行。 小部件。
对于MainActivity,我编写了一个使用以下代码获取InputStream的方法:
getBaseContext().getResources().openRawResource(R.raw.tips);
我的问题是如何在AppwidgetProvider中获得对Context的引用,因为当用户使用窗口小部件而不是应用程序时,不会调用MainActivity的onCreate方法。 本身。 上面的代码在widgetprovider类中导致编译器错误。
您可以从onUpdate获取它。 请检查代码
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
// TODO Auto-generated method stub
super.onUpdate(context, appWidgetManager, appWidgetIds);
context.getResources().openRawResource(id);
}
如果仅上下文有问题
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {..}
AppWidgetProvider
获取将上下文对象转换为参数。
你能分享你的实现吗?
最好的方法是将Context
传递到需要访问应用程序资源的所有类和函数中。
第二种最佳方法是在您的Application
类中存储static Context
。 这是一个确切描述其操作方法的示例: 在Android上获取“上下文”的静态方法?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.