按名称加载drawable

时间:2012-08-07 14:54:43

标签: android android-resources

我有以下代码:

if(d.getIcon() != null)
    {
        int resId = mContext.getResources().getIdentifier("cancel", "drawable","org.test.test.BouwSchermActivity"); 
        Drawable icon = mContext.getResources().getDrawable(resId);
        btn.setBackgroundDrawable(icon);
    }

这是我的探险家:

enter image description here

当我运行它时,resId总是返回0.
如果我使用R.drawable.cancel而不是resId它可以正常工作。

可能是什么问题? 我已经尝试清理我的项目或使用“cancel.png”而不是“取消”

Thx:)

1 个答案:

答案 0 :(得分:3)

试试这个

int resId = getResources().getIdentifier("package.name.name:drawable/cancel", null, null);
btn.setBackgroundDrawable(resId);