그리드뷰를 사용하여 배열에 이미지를 넣어 뿌렸습니다.
최종적으로 2초마다 랜덤으로 하나의 배열이미지가 변경되게 하고 싶습니다.
일단 이미지변경하는방법에서 헤매고 있네여..
배열이미지 변경하는것 방법좀 부탁드립니다~
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gridview = (GridView) findViewById(R.id.gridView1);
gridview.setAdapter(new ImageAdapter(this));
// 그리드뷰에 이미지를 보여주기 위한 이미지 어댑터를 설정
}
public class ImageAdapter extends BaseAdapter {
// BaseAdapter를 상속하여 그리드뷰에 이미지를 보여줄 수 있는기능을 정의한다.
private Context context;
Integer[] images = { R.drawable.white, R.drawable.white,
R.drawable.white, R.drawable.white, R.drawable.white,
R.drawable.white, R.drawable.white, R.drawable.white,
R.drawable.white };
// 그리드뷰에 보여질 이미지배열
public ImageAdapter(Context c) {
// TODO Auto-generated constructor stub
this.context = c;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return images.length;
// 이미지갯수를 반환한다
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// 각각의 이미지를 설정한다
ImageView imageView;
if (convertView == null) {
imageView = new ImageView(context);
// 재사용할 수 있는 이미지뷰가 없다면 이미지뷰 객체를 새로 생성한다
imageView.setLayoutParams(new GridView.LayoutParams(100, 100));// 60,
// 60));
// 이미지뷰 크기
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
// 이미지 크기
imageView.setPadding(1, 1, 1, 1);
// 공백
} else {
imageView = (ImageView) convertView;
// 재사용할 수 있는 이미지뷰가 있다면 이를 재사용한다.
}
imageView.setImageResource(images[position]);
// 이미지를 인자로 넘어온 position에 맞게설정한다
return imageView;
}