마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Imageview 이미지 바꾸기

0 추천

안녕하세요

지금 아이템 리스트를 만드려고하는데

서버에서 아이템 아이콘 네임과 갯수를 받아서

해당 프로젝트에  안에 잇는 이미지로 이미지 아이콘을 바꾸는작업을 하려고 합니다

 

기본적으로 이미지 바꾸는건

ImageView iv_icon = (ImageView)convertView.findViewById(R.id.iv_itemicon);
iv_icon.setBackgroundResource(R.drawable.battle);

이런식으로 알고잇는데

 

서버에서 받은 이미지 아이콘 네임은 단순 스트링이거든요( 물론 drawable 폴더에는 같은 네이밍으로 해당 아이템아이콘을 넣을 예정) 이 스트링을 이용해서 R.drawable 에서 해당 아이템아이콘을

가져와서 imageview에 세팅 할수있는 방법이 있을까요?

 

도움 부탁드려요~~

 

 

 

하루일과 (330 포인트) 님이 2015년 11월 5일 질문

2개의 답변

0 추천
미리 스트링과 이미지 ID를 만들어 놓으시면 됩니다.

예로 아래와 같이 미리 설정하시면 되겠네요..

HashMap<String, Integer> map = new HashMap<String, Integer>();
map.put("아이콘 이름", R.drawable.aaaa);

나중에 이 map에서 데이터를 get 하시면 됩니다.
mcsong (44,040 포인트) 님이 2015년 11월 5일 답변
답변 감사합니다~
아이템명과 id를 관리하는 맵을 쓰면 되는군요 ㅎ
0 추천
String drawableName = "battle";
int res_id = getResources().getIdentifier(drawableName , "drawable", getPackageName());

iv_icon.setBackgroundResource(res_id);
익명사용자 님이 2015년 11월 5일 답변
2015년 11월 5일 수정
음.. fragment 내에서 하는거라그런지 해당 소스가 에러가 나네요

Unhandled Exception : java lang NoSuch Field Exception 이라는
컴파일전 빨간줄이가네요

제가 안드로이드를 잘몰라서 위엣분 답글대로 해보려고요 ㅎ 답변 감사드려요~
...