728x90
Spinner는 선택해야 할 내용들을 adapter에 데이터를 담아서 가져온다.
1. 스피너에 넣을 ArrayList를 만든다.
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("가지볶음");
arrayList.add("닭볶음탕");
arrayList.add("광어회");
arrayList.add("후라이드치킨");
arrayList.add("낫또");
arrayList.add("청국장");
arrayList.add("닭가슴살샐러드");
2. ArrayAdapter를 만들어 주고, ArrayAdapter에 ArrayList를 넣어줍니다.
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item, arrayList);
3. spinner를 만들어 주고 spinner에 어뎁터를 연결해 줍니다.
Spinner spinner = (Spinner)findViewById(R.id.spinner);
spinner.setAdapter(arrayAdapter);
4. spinner에 클릭리스너를 달아주고 클릭되었을 때 토스트메시지를 띄워줍니다.
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
{ @Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(getApplicationContext(),arrayList.get(i)+" 선택되었습니다.", Toast.LENGTH_SHORT).show();
} @Override
public void onNothingSelected(AdapterView<?> adapterView) {
// 선택되지 않았을 때
}
});
<전체코드>
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("가지볶음");
arrayList.add("닭볶음탕");
arrayList.add("광어회");
arrayList.add("후라이드치킨");
arrayList.add("낫또");
arrayList.add("청국장");
arrayList.add("닭가슴살샐러드");
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item, arrayList);
Spinner spinner = (Spinner)findViewById(R.id.spinner);
spinner.setAdapter(arrayAdapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
{ @Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(getApplicationContext(),arrayList.get(i)+" 선택되었습니다.", Toast.LENGTH_SHORT).show();
} @Override
public void onNothingSelected(AdapterView<?> adapterView) {
// 선택되지 않았을 때
}
});
}
}
실행
'안드로이드 자바' 카테고리의 다른 글
[JAVA][Android] Volley+를 이용해서 이미지 파일 값을 보내고 응답받기 (4) | 2022.01.29 |
---|---|
[Java][Android] MPAndroidChart (0) | 2022.01.26 |
[Java][Android] BroadCast 이벤트 송신, 수신하기 (0) | 2022.01.23 |
[JAVA][Android] 핸들러를 사용해 원형프로그래스바를 실행하고, 종료시 토스트 메시지 띄우기 (0) | 2022.01.21 |
[JAVA][Android] Textview의 텍스트 생략 기호(...) 사용 또는 텍스트 흐름 효과주기 (0) | 2022.01.19 |