В моем приложении мне нужно получить некоторые растровые рисунки где-нибудь, где я не хочу сохранять ссылку R
. Поэтому я создаю класс DrawableManager
для управления чертежами.Как получить доступ к ресурсам по названию в android
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.?
}
}
Тогда я хочу, чтобы получить вытяжку по имени где-то, как это (car.png помещаются внутри рес/вводимого коэффициента):
Drawable d= DrawableManager.getDrawable("car.png");
Однако, как вы можете видеть, я не могу доступ ресурсы по названию:
public static Drawable getDrawable(String name) {
return R.drawable.?
}
Любые альтернативы?
'лучше передать контекст в самом объект, который использует вытяжку, чем держать статический контекст somewhere' Привет, Вы можете сказать мне больше? – hguser
@hguser - причина, по которой вы хотите, чтобы «Drawable» отображал ее на экране - каждый объект/объект/фрагмент имеет связанный с ним «Context» - передает этот «Context» в ваш метод «getDrawable». – ianhanniballake
Спасибо, я понял. – hguser