안드로이드 개발 질문/답변
(글 수 45,052)
protected OverlayItem createItem(int i) { OverlayItem item = null; switch (i) { case 0: item = new OverlayItem(new GeoPoint(37340482, 126732778), "A 공학관", null); item.setMarker(redpin); break; case 1: item = new OverlayItem(new GeoPoint(37340320, 126733157), "B 공학관", null); break; case 2: item = new OverlayItem(new GeoPoint(37340022, 126733810), "C 공학관", null); break; case 3: item = new OverlayItem(new GeoPoint(37339702, 126734019), "D 공학관", null); break; case 4: item = new OverlayItem(new GeoPoint(37339699, 126734880), "E 공학관", "◈관련학과◈\n컴퓨터공학과\n게임공학과"); break; case 5: item = new OverlayItem(new GeoPoint(37339465, 126735394), "P 공학관", null); break; case 6: item = new OverlayItem(new GeoPoint(37340245, 126734661), "G 공학관", null); break; case 7: item = new OverlayItem(new GeoPoint(37339706, 126733488), "행정동", null); break; case 8: item = new OverlayItem(new GeoPoint(37340692, 126734052), "종합교육관", null); break; case 9: item = new OverlayItem(new GeoPoint(37341801, 126732321), "TIP", null); break; } return item; } public boolean onTap(int index) { final OverlayItem item = getItem(index); new AlertDialog.Builder(MiniMap.this) .setIcon(R.drawable.abuilding) .setTitle(item.getTitle()+" 입니다.") .setMessage(item.getSnippet()) .setPositiveButton("상세보기", /*mClick*/new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { if (item.getTitle() == "A 공학관") { Intent Aclass = new Intent(MiniMap.this, Aclass.class); startActivity(Aclass); } else if (item.getTitle() == "B 공학관") { Intent Bclass = new Intent(MiniMap.this, Bclass.class); startActivity(Bclass); } else if (item.getTitle() == "C 공학관") { Intent Cclass = new Intent(MiniMap.this, Cclass.class); startActivity(Cclass); } else if (item.getTitle() == "D 공학관") { Intent Dclass = new Intent(MiniMap.this, Dclass.class); startActivity(Dclass); } else if (item.getTitle() == "E 공학관") { new AlertDialog.Builder(MiniMap.this) .setIcon(R.drawable.pu) .setTitle("층을 선택하세요.") .setItems(R.array.BuildE, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { String[] BuildE = getResources().getStringArray(R.array.BuildE); Toast.makeText(MiniMap.this, BuildE[which]+"을 선택하셨습니다.", Toast.LENGTH_LONG).show(); if(which == 0){ Intent Eclass = new Intent(MiniMap.this, Eclass.class); startActivity(Eclass); } else if(which == 1){ Intent e3 = new Intent(MiniMap.this, e3.class); startActivity(e3); } else if(which == 2){ Intent e4 = new Intent(MiniMap.this, e4.class); startActivity(e4); } else if(which == 3){ Intent e5 = new Intent(MiniMap.this, e5.class); startActivity(e5); } } }) .setNegativeButton("닫기", null) .show();
다이얼로그에서 아이콘을 변경하는게 막혀서 이렇게 질문드립니다!
우선 제가 구현하려고 하는것은 구글맵에서 각 건물에 마커를띄운후 특정 건물 마커를 누를시
누른 마커의 건물사진이 다이얼로그 아이콘자리에 보이게하는것입니다.
코드를 보시면 onTap에 setIcon부분의 파라미터를 어떻게 조정해야하는데 어찌해야할지 몰라서 질문드립니다.
drawable은 않되는것같구 index로 해야할듯한데... 방법을 모르겠네요
그리고 아래쪽 코드를 보시면 특정 건물마커를 누른후 다이얼로그에서 층을 선택한뒤에 그 층의 단면도를 보이게 하려고 하고있습니다.
하다보니 각 층별 이미지마다 액티비티 클래스를 하나씩 만들었는데요. 이렇게 하니까 좀 지저분해지더라구요 ㅎㅎ;;;;
아직 단면도가 많이 남아있거든요~_~ㅎㅎ;
혹시 위에 방법 말고 다른방법이 있으시면 알려주세요!
읽어주셔서 감사합니다~