2016-12-22 2 views
0

У меня есть в моем сценарии:Random ImageView - можно определить, что отображается?

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); 

Теперь я хочу сделать что-то вроде этого, что каждое изображение из этой случайной функции открывает другую деятельность по щелчку. Можно ли сделать что-то:

if img_3показывает, перейдите на страницу NumberOne.java onClick?

ответ

1

Вы можете просто сохранить любое изображение, которое вы случайно выбрали, и перейти оттуда.

Edit:

Вы можете установить неконечное статическую переменную для хранения идентификатора фотографии выбранного.

например: 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 
     } 
    } 
}); 
+0

как? Можете ли вы помочь мне с любой ссылкой или smth? –

+0

Обновлено основное сообщение –

+0

Спасибо за помощь! Можете ли вы дать полный код для onclicklistener и onclick? –

Смежные вопросы