簡體   English   中英

從Android非活動類中的資源讀取文本

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM