2013-10-10 144 views
3

在我的应用程序中,我有按钮和ImageView动态更改按钮上的Imageview

在这里,当我按下按钮我想改变ImageView。我在我的可绘制文件夹中有5个图像。按下按钮ImageView根据按钮点击逐个更改图像。我想要它的解决方案。

感谢任何人都可以提供帮助。

+0

你有任何的代码吗? –

回答

3

维护一个图像ID数组和内部onClick,使用数组中的id设置图像,然后增加索引。

例如: -

ArrayList<Integer> ids=new ArrayList<Integer>(); 
     ids.add(R.drawable.image1); 
     ids.add(R.drawable.image2); 
     ids.add(R.drawable.image3); 
     ids.add(R.drawable.image4); 
     ids.add(R.drawable.image5); 
Int index=0 
     b.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
if(index<ids.size()){ 
     imageview.setImageResource(ids.get(index)); 
     index++; 
    } 
else index=0; 
} 
}); 
+0

它的工作...谢谢你.... –

+0

不客气。请注意,您必须根据需要编辑'其他'部分。 – Nizam

+1

yeupp完成了它... –

3

正如@Nizam所述只是维持ID的数组和在onclick加载dinamically图像()。而不是随机使用一个字段变量并增加它。小心数组长度!

final int[] ids = new int[] { R.drawable.img1, R.drawable.img2 }; 
findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     int randomId = new Random().nextInt(ids.length); 
     ImageView imageView = (ImageView) findViewById(R.id.imageview); 
     imageView.setImageDrawable(getResources().getDrawable(randomId)); 
    } 
}); 
+0

它也workin谢谢你.. –