我将ImageView放在RelativeLayout中。我正在使用LayoutParams设置它们并使用setMargins()来设置每张图片的位置。将放置在第一个图像顶部的图像的最大数量将仅达到8.它们是5个不同图像和屏幕上可放置的8个位置。我想在按下相应的按钮时创建图像,并能够将该图像设置为RelativeLayout并显示更改。我想要一种清除屏幕上所有图像的方法,除了主/背景ImageView。我不喜欢填充8 X 5 = 40个图像然后将它们全部隐藏,然后当我需要它们显示时将它们的视图更改为Visible。我需要的东西会根据需要填充,但是当我清除它时能够破坏或移除。
谢谢, 塞尔达
aButton.setOnClickListener(new OnClickListener(){
public void onClick(View v)
{
noteNumber++;
if(noteNumber <= 8){
note n = new note(getBaseContext());
n.setNoteNumber(noteNumber);
n.setHeight(85);
images.add(n); //ArrayList()
}
populate();
}
});
}
public void populate(){
//if(noteNumber < 9){
for(note a : images){
//note a = images.get(noteNumber-1); //images is of type ArrayList<ImageView>()
if(a != null && a.getMasterImage() != null){
int number = a.getNoteNumber();
imageParams.setMargins(25+45*number, a.getHeight(), 20, 360);
frame.addView(a.getMasterImage(),imageParams);
}
}
}
}
public class note {
private int noteNumber;
private int height;
private ImageView masterImage;
public note(Context c){
masterImage = new ImageView(c);
masterImage.setImageResource(R.raw.zelda);
this.noteNumber = 1;
height = 0;
}
/**
* @return the masterImage
*/
public ImageView getMasterImage() {
return masterImage;
}
/**
* @param masterImage the masterImage to set
*/
public void setMasterImage(ImageView masterImage) {
this.masterImage = masterImage;
}
/**
* @return the noteNumber
*/
public int getNoteNumber() {
return noteNumber;
}
/**
* @param noteNumber the noteNumber to set
*/
public void setNoteNumber(int noteNumber) {
this.noteNumber = noteNumber;
}
/**
* @return the height
*/
public int getHeight() {
return height;
}
/**
* @param height the height to set
*/
public void setHeight(int height) {
this.height = height;
}
}