有一个FrameLayout和一个Button,我想在FrameLayout上添加6个ImageView,当我点击Button时,将6个ImageView替换为其他6个ImageView。因此FrameLayout可能会同时显示12个ImageView。(我使用Universal_ImageLoader将图像加载到ImageView)。如何解决这个问题?
答案 0 :(得分:1)
你可以通过编程方式设置图像(不是xml),你不需要有12个图像视图。
例如为您的按钮设置一个on click侦听器,因此当您单击它时,您将新图像设置为ImageView:
image1 = (ImageView) findViewById(R.id.imageView1);
image2 = (ImageView) findViewById(R.id.imageView2);
image3 = (ImageView) findViewById(R.id.imageView3);
image4 = (ImageView) findViewById(R.id.imageView4);
image5 = (ImageView) findViewById(R.id.imageView5);
image6 = (ImageView) findViewById(R.id.imageView6);
final Button button = (Button) findViewById(R.id.button_id);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
image1.setImageResource(R.drawable.myPic1);
image2.setImageResource(R.drawable.myPic2);
image3.setImageResource(R.drawable.myPic3);
image4.setImageResource(R.drawable.myPic4);
image5.setImageResource(R.drawable.myPic5);
image6.setImageResource(R.drawable.myPic6);
}
});
setImageResource
方法在给定的ImageView上设置一个新图片(这里的图像视图是image1,image2,image3,image4,image5,image6)。
现在我们已将此方法放在onClick中,因此每当您单击按钮时,所有6个图像都将更改为您选择的图像(在我的示例中,我选择的图像是myPic1,myPic2,myPic3,myPic4,myPic5,myPic6)
通过这种方式,您可以将所有6个ImageView替换为其他6个ImageView,只需单击按钮即可
我希望这会有所帮助:)