W mojej aplikacji, potrzebuję uzyskać niektóre rysunki bitmapowe gdzieś, gdzie nie chcę zachować odniesienia R
. Dlatego tworzę klasę DrawableManager
, aby móc zarządzać projektami.jak uzyskać dostęp do zasobów do rysowania według nazwy w Androidzie
public class DrawableManager {
private static Context context = null;
public static void init(Context c) {
context = c;
}
public static Drawable getDrawable(String name) {
return R.drawable.?
}
}
Następnie chcę uzyskać rozciągliwej według nazwy gdzieś tak (The car.png jest umieszczany wewnątrz RES/kanału alfa):
Drawable d= DrawableManager.getDrawable("car.png");
Jednak jak widać, nie mają dostępu zasoby o nazwie:
public static Drawable getDrawable(String name) {
return R.drawable.?
}
Jakieś alternatywy?
'lepiej przekazać kontekst do samego obiektu, który jest z wykorzystaniem rozciągliwej niż utrzymywanie statycznego Kontekst somewhere' Cześć, możesz mi powiedzieć więcej? – hguser
@hguser - powód, dla którego chciałbyś, aby 'Drawable' wyświetlał go na ekranie - każdy widok/aktywność/fragment ma powiązany" Kontekst "- przekaż' Context' do metody 'getDrawable'. – ianhanniballake
Dzięki, mam to. – hguser