首页 > 其他 > 详细

使用getIdentifier()获取资源Id

时间:2014-11-25 12:55:44      阅读:265      评论:0      收藏:0      [点我收藏+]

原文地址:使用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);
}
第一个参数格式是:包名 + : + 资源文件夹名 + / +资源名;是这种格式 然后其他的可以为null

(2)方式二
Resources resources = context.getResources();
int indentify= getResources().getIdentifier(“icon”, “drawable”, “org.anddev.android.testproject”);
第一个参数为ID名,第二个为资源属性是ID或者是Drawable,第三个为包名。

如果找到了,返回资源Id,如果找不到,返回0 。

写了一个方法:获取资源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);

使用getIdentifier()获取资源Id

原文:http://my.oschina.net/yuanxulong/blog/348441

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!