2014-03-05 82 views
0

所以我想在这里做的是,起始图像分配了标签0.当我运行该方法时,我希望图像更改为gallows1并获得“1”的标签。然后,当它再次运行时,我想让它保持gallows1的标签为1,然后将其更改为gallows2,并重新分配....基本上,我希望1个图像更改为下一个,等等,因为方法运行6次。Android Developement - If-Then-Else声明。切换图像

这是我到目前为止。

public void switchImage(View view) { 
     ImageView img = (ImageView) findViewById(R.id.imageView1); 
     img.setTag("0"); 
     if (img.getTag() == "0") { 
      img.setImageResource(R.drawable.gallows1); 
      img.setTag("1"); 
     } else if (img.getTag() == "1") { 
      img.setImageResource(R.drawable.gallows2); 
      img.setTag("2"); 
     } else if (img.getTag() == "2") { 
      img.setImageResource(R.drawable.gallows3); 
      img.setTag("3"); 
     } else if (img.getTag() == "3") { 
      img.setImageResource(R.drawable.gallows4); 
      img.setTag("4"); 
     } else if (img.getTag() == "4") { 
      img.setImageResource(R.drawable.gallows5); 
      img.setTag("5");; 
     } else if (img.getTag() == "5") { 
      img.setImageResource(R.drawable.gallows6); 
      img.setTag("6"); 
     } else if (img.getTag() == "6") { 
      return; 
     } 
    } 

我制作游戏的刽子手,但使用的显卡,我想有一个扭曲(它是一个挑战凸出),并有进展的图像显示来代替。

+0

您应该打开view.getId() –

+0

,以便您需要哪些帮助 – Naveen

+0

使用动画.. –

回答

1

将这个方法外:从方法

你现在的样子,img.setTag("0")内

ImageView img = (ImageView) findViewById(R.id.imageView1); 
img.setTag("0") 

,并删除img.setTag("0")被调用每次所以它永远只是碰到的第一个,如果块。如果将它移动到外部,则第一次调用方法时,如果块1将匹配,则下一次(如块2)等。

+0

我会将img.setTag(“0”)移动到方法之外吗?像我应该在哪里移动这两条线? – Colin

+0

请评论,明天我需要这个。 – Colin

+0

把它放在switchImage第一次被调用之前调用的地方。或者当你想重置到第一张图片。如果你只想在图像中循环一次,你可以把它放在onCreate上。 – Fraggle