使用getIdentifier()獲取資源Id

原文地址:使用getIdentifier()獲取資源Id做者:雨點點 使用getIdentifier()方法能夠方便的獲各應用包下的指定資源ID。 主要有兩種方法: (1)方式一 Resources resources = context.getResources(); int indentify = resources.getIdentifier(org.loveandroid.androidtest:drawable/icon",null,null); if(indentify>0){ icon = resources.getDrawable(indentify); } 第一個參數格式是:包名 + : + 資源文件夾名 + / +資源名;是這種格式 而後其餘的能夠爲nullandroid

(2)方式二 Resources resources = context.getResources(); int indentify= getResources().getIdentifier("icon", "drawable", "org.anddev.android.testproject"); 第一個參數爲ID名,第二個爲資源屬性是ID或者是Drawable,第三個爲包名。資源

若是找到了,返回資源Id,若是找不到,返回0 。get

寫了一個方法:獲取資源ID,若是不存在返回0 static int getResourceId(Context context,String name,String type,String packageName){ Resources themeResources=null; PackageManager pm=context.getPackageManager(); try { themeResources=pm.getResourcesForApplication(packageName); return themeResources.getIdentifier(name, type, packageName);io

相關文章
相關標籤/搜索