2010-11-12 67 views
2

如何使用資產?我有這樣的代碼:如何在Android中使用資產

AssetManager assets = getAssets(); 
InputStream stream = assets.open("test.txt"); 

它的接縫只能在Activity類中使用。如果我嘗試在另一個類中使用上面的代碼,我得到一個有關getAssets()的錯誤不是我的類的類型。

那麼如何在不是活動的類中使用資產呢?

回答

2

你必須通過你想要使用你的活動的上下文的類。爲了在你的活動中獲得正確的背景,你需要做這樣的事情。

private Context ctx = null; 

public void onCreate(Bundle bundle) { 
    super.onCreate(bundle); 
    // your other code 
    ctx = getApplication(); 

    MyClass myClass = new MyClass(ctx); 
} 

其中MyClass是您正在討論的類。在你的類中你必須在你的類構造函數中處理上下文。

class MyClass { 
    Context ctx = null; 

    public MyClass(Context ctx) { 
     this.ctx = ctx; 
    } 
} 
相關問題