如何将资源转换为int?

时间:2014-04-27 00:23:46

标签: java android resources

通过

imagebutton1.getResources();

返回“资源”。你如何将该资源转换为int? IE:R.id.xxx

我的目标是检索图像的ID。

5 个答案:

答案 0 :(得分:0)

根据this帖子,您的Drawable可能没有ID。

你确定要这样做吗?

答案 1 :(得分:0)

在您的代码中,找到您指定的位置imagebutton1

您最有可能使用Activity#findViewById()分配内容。

类似于

的东西
int id = R.id.imageButton;

ImageButton imageButton = (ImageButton) findViewById( id );

答案 2 :(得分:0)

您不需要函数来为您提供整数资源ID。

您需要做的只是R.id.(drawable name) 是int。

如果您想获得实际的整数,请拨打getInteger(int id)

所以在你的情况下,只需做R.id.imageButton1

答案 3 :(得分:0)

这是一个获取和设置ImageButtons图像的简单示例。

    ImageButton x = (ImageButton) findViewById(R.id.imageButton1);
    ImageButton x2 = (ImageButton) findViewById(R.id.imageButton2);
    x2.setImageDrawable(x.getDrawable());

答案 4 :(得分:0)

getIdentifier()方法从资源名称返回资源ID。假设imageButton1是你的资源名称(res / drawable中的文件名),这就是你如何使用它:

context.getResources().getIdentifier("imageButton1", "drawable", context.getPackageName());