Spinner (스피너)
1. values에 배열 타입 xml을 만든다. (arrays.xml)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="plants_array">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
<item>Mars</item>
</string-array>
</resources>
2. layout에서 Spinner를 사용하여 불러와준다. (activity_main.xml)
스피너의 ID는 spinner1로 지정해줬다.
글자색이 흰색이라 보이지 않으므로 스피너에 백그라운드를 지정해줬다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<Spinner
android:background="#d2d2d2"
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/plants_array"
/>
</LinearLayout>
3. 스피너의 객체를 반환 받아올 실행 클래스 (MainActivity.java)
package com.progdv.app04_spinner;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import com.progdv.app04_spinner.R;
public class MainActivity extends AppCompatActivity {
Spinner spinner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
spinner = (Spinner)findViewById(R.id.spinner1);
ArrayAdapter adapter =
ArrayAdapter.createFromResource(getApplicationContext(),
R.array.plants_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Log.i("MyTag", "인덱스:"+position);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
}
'안드로이드' 카테고리의 다른 글
이벤트 처리: Toast 이벤트 기초 (0) | 2016.04.26 |
---|---|
그리드 뷰 (GridView) (0) | 2016.04.26 |
AdapterView: Custom Adapter 만들기 (0) | 2016.04.25 |
AdapterView: ListView (0) | 2016.04.25 |
ScrollView (0) | 2016.04.25 |