-3
public Integer[] imgs = new Integer[]{ 
R.drawable.ic_launcher,R.drawable.ic_launcher

};

String s_img = "R.drawable.img_test";

我想要

  • imgs[0] = s_img

  • imgs[0] == R.drawable.img_test

  • 真的 !!

我该怎么办?

4

5 回答 5

1

尝试这个:

s_img = "img_test";//not "R.drawable.img_test" just the name of the image
if(getResources().getIdentifier(s_img, "drawable", getPackageName()) == imgs[0]){
   return true;
}else{
   return false;
}
于 2013-10-02T12:22:29.480 回答
0

你想要一个可绘制的数组,对吧?

Integer[] drawables = {R.drawable.image1, R.drawable.image2, ....};

您可以通过以下方式访问值:

drawables[0]== R.drawable.image1

drawables[1]== R.drawable.image2

你把它们循环起来。

于 2013-10-02T12:14:56.207 回答
0

比较对象不要使用“ ==

尝试

"R.drawable.img_test".equals(Integer.toString(imgs[0]));
于 2013-10-02T12:15:17.530 回答
0

将它们放在枚举而不是数组中。

于 2013-10-02T12:16:52.017 回答
0

告诉我这正是你需要的,我想我知道你需要什么。

public Integer[] imgs = new Integer[]{ 
    R.drawable.ic_launcher,R.drawable.ic_launcher
                 };


    String s_img;

     s_img = Integer.toString(x);
于 2013-10-02T12:22:28.737 回答