Android
스피너
수색…
활동에 회 전자 추가하기
/res/values/strings.xml에서 :
<string-array name="spinner_options">
<item>Option 1</item>
<item>Option 2</item>
<item>Option 3</item>
</string-array>
레이아웃 XML :
<Spinner
android:id="@+id/spinnerName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/spinner_options" />
활동 내 :
Spinner spinnerName = (Spinner) findViewById(R.id.spinnerName);
spinnerName.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String chosenOption = (String) parent.getItemAtPosition(position);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {}
});
기본 회 전자의 예
회 전자 드롭 다운 입력 유형입니다. 첫째로 배치에서
<Spinner
android:id="@+id/spinner" <!-- id to refer this spinner from JAVA-->
android:layout_width="match_parent"
android:layout_height="wrap_content">
</Spinner>
이제 스피너에서 값 채우기 두 가지 방법으로 주로 spinner
에서 값을 채 웁니다.
- XML 자체에서 res 아래 값 디렉토리에 array.xml 을 작성합니다. 이
array
만들기
<string-array name="defaultValue">
<item>--Select City Area--</item>
<item>--Select City Area--</item>
<item>--Select City Area--</item>
</string-array>
이제이 줄을 sppiner XML에 추가하십시오.
android:entries="@array/defaultValue"
- JAVA를 통해 값을 추가 할 수도 있습니다.
activity
cityArea = (Spinner)에서 사용중인 경우 findViewById (R.id.cityArea); 그렇지 않으면 fragment
에서 사용하는 경우
cityArea = (Spinner) findViewById(R.id.cityArea);
이제 Strings
의 arrayList
를 만듭니다.
ArrayList<String> area = new ArrayList<>();
//add values in area arrayList
cityArea.setAdapter(new ArrayAdapter<String>(context
, android.R.layout.simple_list_item_1, area));
이것은 다음과 같이 보일 것이다.
장치 Android 버전에 따라 스타일이 렌더링됩니다.
다음은 몇 가지 기본 테마입니다.
앱이 명시 적으로 매니페스트의 테마를 요청하지 않으면 Android System은 앱의 targetSdkVersion을 기반으로 기본 테마를 결정하여 앱의 원래 기대치를 유지합니다.
Android SDK 버전 | 기본 테마 |
---|---|
버전 <11 | @android : 스타일 / 테마 |
11에서 13 사이의 버전 | @android : 스타일 / 테마 .Holo |
14 이상 | @android : 스타일 / 테마 .DeviceDefault |
Spinner
는 XML의 도움으로 쉽게 사용자 정의 할 수 있습니다.
android:background="@drawable/spinner_background"
android:layout_margin="16dp"
android:padding="16dp"
XML로 사용자 정의 배경을 생성하고 사용하십시오.
회 전자에서 선택한 항목의 위치 및 기타 세부 사항을 쉽게 얻을 수 있습니다.
cityArea.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
areaNo = position;
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
스피너에서 선택한 항목의 텍스트 색 변경
XML에서 두 가지 방법으로 수행 할 수 있습니다.
<item android:state_activated="true" android:color="@color/red"/>
그러면 팝업에서 선택한 항목 색상이 변경됩니다.
JAVA에서는 setOnItemSelectedListener (...)에서이 작업을 수행합니다.
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
((TextView) parent.getChildAt(0)).setTextColor(0x00000000);
// similarly change `background color` etc.
}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow