随机ImageView - 可以检测哪个显示?(Random ImageView - is possible to detect which is showing?)

我已经进入了我的剧本:

final String str = "img_" + rnd.nextInt(9); img.setImageDrawable ( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

}

final ImageView img = (ImageView) view.findViewById(R.id.imgRandom);

现在,我想做这样的事情,来自这个随机函数的每个图像都打开onClick上的其他活动。 有可能做到这一点:

如果 显示 img_3 ,请转到onClick上的NumberOne.java活动?

I've got in my script:

final String str = "img_" + rnd.nextInt(9); img.setImageDrawable ( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

}

with

final ImageView img = (ImageView) view.findViewById(R.id.imgRandom);

Now, I want to make something like this, that every image from this random function opens other activity onClick. Is it possible to make it something:

if img_3 is showing, go to NumberOne.java activity onClick?

最满意答案

您可以存储随机选择的任何图像,然后从那里开始。

编辑:

您可以设置非最终静态变量来保存所选照片的​​ID。

例如: public static Integer CURRENT_IMAGE = -1;

当您随机生成数字时,请确保将其写入CURRENT_IMAGE

CURRENT_IMAGE = rnd.nextInt(9); final String str = "img_" + CURRENT_IMAGE; img.setImageDrawable( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

之后,您可以编辑onclick方法进行检查,如下所示:

if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever }

更新2:

img.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever } } });

You can just store whatever image you randomly picked, and go from there.

Edit:

You can set a non-final static variable to hold the id of the photo chosen.

eg: public static Integer CURRENT_IMAGE = -1;

When you randomly generate a number make sure to write it to CURRENT_IMAGE

CURRENT_IMAGE = rnd.nextInt(9); final String str = "img_" + CURRENT_IMAGE; img.setImageDrawable( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

After that, you can edit the onclick method to check like so:

if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever }

Update 2:

img.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever } } });随机ImageView - 可以检测哪个显示?(Random ImageView - is possible to detect which is showing?)

我已经进入了我的剧本:

final String str = "img_" + rnd.nextInt(9); img.setImageDrawable ( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

}

final ImageView img = (ImageView) view.findViewById(R.id.imgRandom);

现在,我想做这样的事情,来自这个随机函数的每个图像都打开onClick上的其他活动。 有可能做到这一点:

如果 显示 img_3 ,请转到onClick上的NumberOne.java活动?

I've got in my script:

final String str = "img_" + rnd.nextInt(9); img.setImageDrawable ( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

}

with

final ImageView img = (ImageView) view.findViewById(R.id.imgRandom);

Now, I want to make something like this, that every image from this random function opens other activity onClick. Is it possible to make it something:

if img_3 is showing, go to NumberOne.java activity onClick?

最满意答案

您可以存储随机选择的任何图像,然后从那里开始。

编辑:

您可以设置非最终静态变量来保存所选照片的​​ID。

例如: public static Integer CURRENT_IMAGE = -1;

当您随机生成数字时,请确保将其写入CURRENT_IMAGE

CURRENT_IMAGE = rnd.nextInt(9); final String str = "img_" + CURRENT_IMAGE; img.setImageDrawable( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

之后,您可以编辑onclick方法进行检查,如下所示:

if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever }

更新2:

img.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever } } });

You can just store whatever image you randomly picked, and go from there.

Edit:

You can set a non-final static variable to hold the id of the photo chosen.

eg: public static Integer CURRENT_IMAGE = -1;

When you randomly generate a number make sure to write it to CURRENT_IMAGE

CURRENT_IMAGE = rnd.nextInt(9); final String str = "img_" + CURRENT_IMAGE; img.setImageDrawable( getResources().getDrawable(getResourceID(str, "drawable", getActivity().getApplicationContext()) )); return view; // ^^^ move it here

After that, you can edit the onclick method to check like so:

if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever }

Update 2:

img.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(CURRENT_IMAGE == 3){ //Start activity NumberOne.java... }else if(CURRENT_IMAGE == 4){ //Start another activity... }else{ // Do whatever } } });