안드로이드 스튜디오~

Spinner(드롭다운 메뉴)

임종뚱 2020. 1. 3. 22:12

Spinner란 드롭다운을 말하고 펼쳐지는 메뉴이며 여러개의 값 중 1개를 선택하기 위해 사용하는 안드로이드에서 제공해주는 기본 위젯이다.

 

드롭다운 메뉴를 xml을 이용해서 만들어 보자!

 

처음에 res폴더 -> values폴더에 array.xml을 만들어 줍니다.

 

이런식으로 만들어 주고 array.xml에 작성해줍니다

 

이곳에서 드롭다운에 들어갈 메뉴들의 항목들을 작성해줍니다.

배열의 이름을 자유롭게 test로 선언해주고 <item></item>에 실제 들어갈 항목들을 여러가지 적어주시면 됩니다.

 

이제 메인 액티비티를 설정해줍니다.

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <Spinner
        android:id="@+id/spinner"
        android:layout_width="150dp"
        android:layout_height="40dp"
        android:entries="@array/test">
    </Spinner>

    <TextView
        android:id="@+id/tv_test"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="드롭다운 결과"/>
</LinearLayout>

 

 

스피너를 설정할 때 android:entries="@array/test">로 데이터를 연동해줍니다.

 

간단하게 드롭다운 메뉴 하나를 클릭시 텍스트 결과창에 띄울 것이다.

 

다음 MainActivity.java에서 코드를 작성해줍니다.

 

 

 

spinner와 tv_result 객체를 만들어 주고 각각의 id값을 찾아 넣어줍니다.

 

 

드롭다운 아이템을 눌렀을 떄 대한 리스너를 만들어줍니다 setOnItemSelectedListener()을 선택해줍니다. 이 리스너 안에 new AdapterView.OnItemSelectedListener() 넣어주면 두가지 메소드 중에서 onItemSelected 메소드에 결과값을 넣어줍니다.

 

그리고 빌드를 해주면

 

 

 

드롭다운 메뉴 선택 시 텍스트 결과에 값이 나오게 됩니다.