现在使用新的android API 22 getResources().getDrawable()
现在最好的方法是仅使用getDrawable()

发生了什么变化?

最佳答案

您有一些选择可以以正确的方式(以及将来的证明)来处理此弃用情况,具体取决于要加载的绘图类型:



A)具有主题属性的可绘制对象

ContextCompat.getDrawable(getActivity(), R.drawable.name);


您将按照Activity主题的指示获得样式化的Drawable。
这可能就是您所需要的。



B)没有主题属性的绘画

ResourcesCompat.getDrawable(getResources(), R.drawable.name, null);


您将以旧方式获得未样式化的可绘制对象。请注意:不建议使用ResourcesCompat.getDrawable()



具有其他主题的主题属性的EXTRA)可绘制对象

ResourcesCompat.getDrawable(getResources(), R.drawable.name, anotherTheme);

10-06 16:12