[英]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.