[#11][안드로이드] Spinner(ComboBox) 구현, 글자 색상과 배경 Custom하기
Spinner(ComboBox) 구현, 글자 색상과 배경 Custom하기
1. values > new > xml > values XML file > field.xml 생성하여 Spinner내에 담을 내용 적기
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="spinnerArray">
<item> 분야를 선택하세요. </item>
<item> 요리/베이킹 </item>
<item> 공예/미술 </item>
<item> 운동 </item>
<item> 음악 </item>
<item> 컴퓨터 </item>
<item> 사진 </item>
</string-array>
</resources>
| cs |
2. main_activity.xml 작성.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white">
<Spinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/spinner_field"
android:spinnerMode="dropdown"
android:background="@drawable/editbox"
android:textColor="@color/black"/>
</LinearLayout>
| cs |
3. spinner_item.xml 작성. (Spinner 내부 레이아웃 설정)
textSize, textColor, background 설정
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="15dp"
android:textColor="@color/black"
android:background="#00ff0000"
style="?android:attr/spinnerItemStyle"
android:paddingTop="4dp"
android:paddingBottom="4dp"
/>
| cs |
4. Main.java 수정
//Spinner객체 생성
final Spinner spinner_field = (Spinner) view.findViewById(R.id.spinner_field);
//1번에서 생성한 field.xml의 item을 String 배열로 가져오기
String[] str = getResources().getStringArray(R.array.spinnerArray);
//2번에서 생성한 spinner_item.xml과 str을 인자로 어댑터 생성.
final ArrayAdapter<String> adapter= new ArrayAdapter<String>(getContext(),R.layout.spinner_item,str);
adapter.setDropDownViewResource(R.layout.support_simple_spinner_dropdown_item);
spinner_field.setAdapter(adapter);
//spinner 이벤트 리스너
spinner_field.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
if(spinner_field.getSelectedItemPosition() > 0){
//선택된 항목
Log.v("알림",spinner_field.getSelectedItem().toString()+ "is selected");
}
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
| cs |
뻥이요
답글삭제@drawable/editbox 코득 ㅏ없네요.
답글삭제감사합니다
답글삭제