위 그림은 '네이버부동산'에서 지역 설정을 하는 페이지의 캡쳐화면입니다.
각 페이지에서 서울시-강남구-논현동 이런식으로 지역을 선택할 수 있게 만들어졌네요.
제가 만들고 있는 어플에도 같은 방식으로 지역설정을 입력 받을 수 있는 페이지를 만들고 있는데, 생초보라 이걸 어떻게 만들어야하나 계속 고민하고 있었습니다. 그러다 그리드뷰를 사용하여 만들면 쉽다고 하여 도전해봤는데 도무지 되지가 않네요.
고수님들의 도움 부탁드립니다.
제가 구상한 방법은 아래와 같습니다.
먼저 각 지역 이름을 arraylist.xml로 만들었습니다.

그리고, 첫번째 페이지(서울 경기 부산 등등)를 아래와 같이 그리드뷰로 셋팅했습니다.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.selectarea);
//그리드뷰 셋팅
gridView01 = (GridView)findViewById(R.id.gridview01);
areaList01 = getResources().getStringArray(R.array.KcityName);
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, areaList01);
gridView01.setAdapter(adapter);
//그리드뷰 클릭이벤트 처리
gridView01.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
String Aname = areaList01[arg2];
Toast.makeText(selectArea.this, Aname, Toast.LENGTH_SHORT)
.show();
Intent intent = new Intent(selectArea.this, selectArea02.class);
intent.putExtra("city", Aname);
startActivity(intent);
}
});
}//end onCreate
그리고, 클릭이벤트로 선택된 지역이름을 인텐트를 써서 다음페이지로 보내고, 다음(구/군) 페이지에서는 인텐트로 받은 데이터를 바탕으로 그리드뷰에 뿌려질 리스트를 선택할 수 있도록 구상했습니다.
그런데 보시는 바와같이 switch문의 인자로 string을 쓰면 안된다고하면서 에러가 발생하네요.
혹시나 싶어서 if문으로 바꿔도 마찬가지구요.
역시 초보라 이런데서 막히면 아무것도 할 수가 없어요 ㅠㅠ
이걸 단순히 에러를 잡는 방법으로 수정이 가능한지... 아니면 구상 자체가 잘 못 되었는지 고수님들의 조언 부탁드립니다.
또, 이런식으로 시/ 구/ 동 등 지역을 입력 받을 수 있는 일반적인 다른 방법이 있다면 좀 가르쳐주세요. 내용이 많다면 어떻게 공부해야 하는지 어디가면 알 수 있는지라도..
어플 개발이라는건 정말 산너머 산인거 같네요.




지역정보는 string으로 넣는게 아니고 우편번호 db등을 이용해서 가지고 오셔야지요
그 수만은 시/도, 시/구/군, 읍/면/동 을 일일히 다 텍스트로 넣으려면 ...........
일단 우편번호 DB를 활용하는법을 공부하세요
해당 DB를 활용 할줄 알게 된다면 그 내용들을 그리드뷰에 뿌려주면 되겠지요
아 참고로....엑박이네요 그림들이......