[Andorid] 항상 까먹는 Spinner 항목값 설정

안드로이드는 뭐 하나 하려면 제법 손이 많이 갑니다.. 스피너에 항목값 리스트를 할당하는 것도 다른 툴에 비해 갑절이나 많은 코드를 작성해야 합니다.

String[] facilityList = { 
    "공급배관", "사용자배관", "공급밸브", "정압기", "테스트박스", 
    "로케이트박스", "정류기", "배류기", "수취기", "검지공" 
};
		
Spinner spFacilityType = (Spinner)findViewById(R.id.spFacilityType);
ArrayAdapter<string> adapter = new ArrayAdapter<string>(
    this, 
    android.R.layout.simple_spinner_dropdown_item, 
    facilityList);
spFacilityType.setAdapter(adapter);
spFacilityType.setSelection(0);

그런데 말입니다… 이렇게 해서 만들어진 스피너의 생김새가 다소 촌스럽습니다. 바로 아래처럼…

사용자 삽입 이미지

표시되는 항목들의 높이가 너무 높아 보이지 않나요? 이 항목의 높이값을 조절하기 위해 위의 코드 중 9번줄의 코드를 변경했는데 전체 코드를 다시 보면 다음과 같습니다.

String[] facilityList = { 
    "공급배관", "사용자배관", "공급밸브", "정압기", "테스트박스", 
    "로케이트박스", "정류기", "배류기", "수취기", "검지공" 
};
		
Spinner spFacilityType = (Spinner)findViewById(R.id.spFacilityType);
ArrayAdapter<string> adapter = new ArrayAdapter<string>(
    this, 
    R.layout.custom_simple_dropdown_item_1line, 
    facilityList);
spFacilityType.setAdapter(adapter);
spFacilityType.setSelection(0);

결과는 다음과 같습니다

사용자 삽입 이미지

이를 위해 여기서 추가한 리소스가 하나 있습니다. 바로 custom_simple_dropdown_item_1line.xml인데요. 그 내용은 다음과 같습니다.



이상 맨날 까먹어 고생하는 코드를 정리해 보았습니다.

“[Andorid] 항상 까먹는 Spinner 항목값 설정”에 대한 3개의 댓글

  1. 헐. 이렇게 간단한 방법이 있었네요.
    지금까지 저는 한개만 써도 어뎁터를 전체 다 만들어서 사용했었는데, 역시 프로그래밍은 경험이 갑인듯

  2. 안녕하세요
    1번 spinner에 체크박스를 선택하고 2번 spinner 로 갔다가 다시 돌아오면
    1번 spinner에서 체크했던 체크박스가 남아있지않습니다.

    혹 이에 대한 해결방법을 아실까요 ?
    서치중에 오래된글이지만 댓글 남겨봅니다 .

    1. 안녕하세요, 답변이 너무 늦었네요. 안드로이드 관련 프로젝트는 매우 오래전에 참여한지라 지금은 기억속에 가물가물합니다. 답변 드리기 어렵네요..

wow에 답글 남기기 응답 취소

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다