码迷,mamicode.com
首页 > 其他好文 > 详细

使用getIdentifier()获取资源Id

时间:2014-11-25 12:58:35      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:android   io   使用   java   for   文件   on   as   应用   

原文地址:使用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

标签:android   io   使用   java   for   文件   on   as   应用   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!