안드로이드 개발 질문/답변
(글 수 45,052)
초급수준이라 아주 간단한 사천성을 만들어보려하는데 너무 어렵네요..
일단 이미지를 랜덤으로 뿌려놓은 상태에서 같은 이미지를 터치했을때 비교할수 있는 방법이 있을까요?
Bitmap과 Canvas 메소드들 봐도 잘 모르겠어서 질문 남깁니다..
private Bitmap []image = new Bitmap[16]; for(int i=0; i<16; i++){ image[i] = BitmapFactory.decodeResource(getResources(), R.drawable.char0 + i); }
저런 식으로 이미지 불러와서 일단 랜덤으로 화면에는 뿌려놓았는데
터치 이벤트 하려고 생각해보니 같은 두 이미지 비교를 어떻게 해야하나 잘 떠오르지 않아서요..
그냥 레이아웃 이용해서 이미지뷰나 버튼 같은걸로 만들었어야하나 하는 생각도 들구요.. 조언 부탁드립니다..
좋은 하루되세요..
2010.10.01 11:46:48
간단하게 class 하나 만들어서요
그곳에 이미지랑 특정 값 숫자 값이나 string 이름 같은거
class card {
Bitmap image;
String cardName;
}
이렇게 하셔서 이름을 비교 하시면 될껍니다.
쉽게는 int 같은걸로 해도 되구요.
2010.10.01 13:38:22
Image는 그냥 view이구요
내부적인 비교로직 등에 사용하는 model을 따로 만드시는 게 좋을 것 같습니다.
card 객체의 내부에 bitmap까지 가지고 있는 것 보다는
card의 종류에 대한 정보를 가지고 있게 하고,
그리기 직전에 card의 종류에 대한 bitmap 이미지를 씌워서 그리게 하면
bitmap을 card객체마다 생성하지 않아도 되니까 메모리 관리에도 유리할 것 같구요
비교는 이미지랑 상관없이 card의 종류가 같은지만 확인하면 되니까 이미지 비교를 쓰지 않아도 될 것 같습니다.
MVC 패턴으로...