GetAssets из контекста приложения в Android - PullRequest
1 голос
/ 12 ноября 2011

возможно ли использовать getAssets с использованием экземпляра приложения, например:

public class MyApp extends Application
{
    static private MyApp    sInstance = null;

    public static MyApp Instance()
    {
        if( sInstance == null )
        {
            sInstance = new MyApp();
        }

        return sInstance;
    }
}

и в функциональном использовании:

*** AssetManager as = MyApp.Instance().getAssets();
Fonts.ARIAL     = Typeface.createFromAsset(as, "Arial.ttf" );

Manifest: имя_приложения "MyApp"

Вызов функции getAssets возвращает исключение NullPointerException (* строка)

Как мне это исправить?

Хорошо нашел ответ: MyApp должно быть так:

public class MyApplication extends Application {
    private static MyApplication singleton;

    public MyApplication getInstance(){
        return singleton;
    }
    @Override
    public void onCreate() {
        super.onCreate();
        singleton = this;
    }
}

Пожалуйста, загляните внутрь: http://intridea.com/2011/5/24/how-to-use-application-object-of-android?blog=company

...