在开发app的时候中会遇到了需要通过Image的图片名称 来获取Image的资源id的需求,这就需要熟悉一些关于通过Context调用
getResources()来获取资源的相关方法来实现功能查阅了资料,得到了最终结果,下面来分享下:
在一个Acitvity或者一个Service中,我们直接this.getResources()方法,就可以获得Reousrces对象。其实Acitivity或者Service本质上就是一个Context,getResources()方法来自Context,而真正实现Context接口是ContextImpl类,所以调用的实际上时ContextImpl类的getResources()方法
Android获取Resources有两种方法,第一种是通过Context,第二种是通过PackageManager。
- 通过Context获取
在以往的程序开发时,大家经常使用getResources.getXXX()方法获取XML文件中定义的资源,比如getDrawable()、getString()、getBoolean()等。这些是怎么访问的呢?流程是怎么样的呢?
首先看看getResources()方法。该方法是Context类成员函数,一般是在Activity对象或者Service对象中调用,因为Activity和Service本质上是一个Context,而真正的实现Context接口的是ContextIm