Spinner에 데이터 추가하는 방법은 2가지 있다.
1. values 폴더에 arrays.xml 파일을 생성하여 string-array를 추가한다.
arrays.xml
<string-array name="spinner_data"> <item>사과</item> <item>배</item> <item>귤</item> </string-array>
activity.java
protected void onCreate(Bundle savedInstanceState) { ... ArrayAdapter spinnerAdapter = ArrayAdapter.createFromResource(getContext(), R.array.spinner_data, android.R.layout.simple_spinner_item); spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); Spinner mSpinner = findViewById(R.id.spinner_test); mSpinner.setAdapter( spinnerAdapter ); }
2. List를 만들어 추가한다.
activity.java
protected void onCreate(Bundle savedInstanceState) { ... List<String> spinnerDataList = new ArrayList<>(); spinnerDataList.add("사과"); spinnerDataList.add("배"); spinnerDataList.add("귤"); ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_spinner_dropdown_item, spinnerDataList); spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); Spinner mSpinner = findViewById(R.id.spinner_test); mSpinner.setAdapter( spinnerAdapter ); }
Spinner 리스너 추가하는 방법
mSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { // 선택된 데이터 값 String selectedItem = parent.getSelectedItem().toString(); // 선택된 데이터 위치( 0 부터 ) int selectedItemIndex = position; } @Override public void onNothingSelected(AdapterView<?> parent) { } });
댓글 없음:
댓글 쓰기