Sto cercando di sviluppare un piccolo gioco.Ottieni ID risorsa da ImageView
Ho un ViewFlipper che ha 50 immagini (una frequenza casuale di 4 immagini) in ImageViews. Poi ho 4 pulsanti con le stesse 4 immagini che possono apparire nel ViewFlipper.
L'operazione è fare clic sul pulsante destro quando viene visualizzata l'immagine a destra. (Quando viene visualizzata l'immagine 1, il pulsante 1 deve essere premuto e così via)
Il mio problema è che non so come ottenere l'ID di ImageView visualizzato.
flipper.getCurrentView().getId()
mi dà "-1" come ID. Ma voglio avere l'ID della "R.drawable.pic1"
Il mio codice finora:
mia Loader-Metodo:
protected void loadPicturesIntoFlipper() {
Random generator = new Random();
pictures = new ArrayList();
for(int i = 0; i < 50;i++){
int number = generator.nextInt(4) + 1;
if(number == 1){
pic = R.drawable.pic1;
}
if(number == 2){
pic = R.drawable.pic2;
}
if(number == 3){
pic = R.drawable.pic3;
}
if(number == 4){
pic = R.drawable.pic4;
}
pictures.add(pic);
}
for(int i=0;i<pictures.size();i++)
{
setFlipperImage((Integer) pictures.get(i));
}
}
mio Insert-Metodo:
private void setFlipperImage(int res) {
image = new ImageView(getApplicationContext());
image.setBackgroundResource(res);
flipper.addView(image);
}
mio check-Metodo:
protected void check(int number, int id) {
int code = 0;;
if(number == 1){
code = R.drawable.button_tip_finder;
}
if(number == 2){
code = R.drawable.button_about_us;
}
if(number == 3){
code = R.drawable.button_power_calculator;
}
if(number == 4){
code = R.drawable.button_powerpedia;
}
if(code == id){
test.setText(""+id);
}
else{
test.setText(""+id);
}
}
mi chiamano come:
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
check(1,flipper.getCurrentView().getId());
flipper.showNext();
}
});
'R.drawable.pic1' è un ID risorsa per un drawable,' .getId() 'restituisce un ID per la vista. –
vuoi che l'id dell'immagine sia visualizzata all'interno della tua visualizzazione di immagini? – Blackbelt
Voglio l'ID dell'immagine visualizzata all'interno della mia visualizzazione di immagini, giusto. – Billabong