KKGRAM
[Spinner] 안드로이드 콤보박스 만들기 본문
[Spinner] 안드로이드 콤보박스 만들기
나름 자주 쓰게되는 폼이다. 그럴때마다 매번 검색하자니 역시 귀찮다. 어플을 만들면서 문의 페이지를 만들어야 하는데, 문의 항목에 대해서 콤보박스로 구현하는게 괜찮을 것 같았다. 기본형은 따로 어댑터를 만들지 않아도 되므로 간편하므로 아마 예제 소스도 굉장히 짧을 것 같다.
콤보박스가 필요 한 곳에 스피너를 먼저 달아주고
activity_main.xml
<Spinner android:id="@+id/txt_question_type" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="@dimen/view.padding.default.small" android:layout_marginBottom="@dimen/view.padding.default.small" android:layout_marginTop="@dimen/view.padding.default.small" android:textSize="@dimen/font_normal" android:textColor="@color/primary.blue" android:gravity="right"></Spinner>
values - array.xml (values폴더에 array.xml이없다면 만들어주자)
<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="question"> <item>서비스문의</item> <item>리뷰문의</item> <item>제휴문의</item> <item>업소문의</item> <item>이벤트</item> <item>기타</item> </string-array> </resources>
콤보박스에 보여 줄 텍스트에 대해서 각각 아이템을 지정 해 준다. 설정 한 아이템들이 만든 스피너에 연결해주는 작업은 자바 파일에서 구현 해 주면 된다. 구현하는데에도 많은 노력이 필요하진 않다.
MainActivity.java
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_question); //spinner = (Spinner) findViewById(R.id.txt_question_type); //butterknife 없을경우 sAdapter = ArrayAdapter.createFromResource(this, R.array.question, android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(sAdapter); spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { public void onItemSelected(AdapterView parent, View view, int position, long id) { Toast.makeText(MainActivity.this, sAdapter.getItem(position), Toast.LENGTH_SHORT).show(); } public void onNothingSelected(AdapterView parent) { } }); }
콤보박스를 통해 선택했을 때, 토스트창이 뜨도록 했어요.
예시화면
'개발' 카테고리의 다른 글
[Android] WebView에서 IScroll 사용시 스크롤이 버벅이는 현상 (0) | 2018.07.02 |
---|---|
[Android] SSL Error Handler 구글 스토어 경고 대응하기 (0) | 2017.01.22 |
(다이얼로그) Adroid Studio custom dialog 생성하기 (5) | 2016.04.11 |
[RatingBar] 안드로이드 RatingBar 자바 코드로 스타일 바꾸기 (1) | 2016.03.25 |
android studio 버튼 클릭 표현 하기 (0) | 2016.02.06 |
Comments