spinner를 커스터마이징 하여 사용해 보려고 기본 spinner을 분석 중입니다.


android.R.layout의 소스를 찾아가려면

SDK의 platform폴더 아래에서 찾을 수 있더군요.


찾아가면 보통 컨트롤(뷰) 태그에

style="?android:attr/XXXX" 가 적용됩니다.

그래서 attr.xml을 찾아갔습니다.

그랬더니 XXXX라는 속성이 format="reference"라고 나오는군요..


 format="reference"에서 더 이상 안으로 들어가서 파해져볼 수가 없는데

어떻게 접근을 해야하나요.




상세히 말하자면

android.R.layout.simple_spinner_item을 수정해보려 합니다.

그런데 

simple_spinner_item.xml은 

 <TextView xmlns:android="http://schemas.android.com/apk/res/android" 

    android:id="@android:id/text1"

style="?android:attr/spinnerItemStyle"

 

    android:singleLine="true"

    android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:ellipsize="marquee" />


style="?android:attr/spinnerItemStyle" 을 찾아가면

        <!-- Default spinner item style. -->

        <attr name="spinnerItemStyle" format="reference"/> 


속성의 상세 정보(reference가 어떻게 구성되어있는지)를 알아야 저가 원하는 디자인으로 바꿀수 있을 것같은데

어떻게 더 알아봐야하는지 방법을 모르겠네요..


잘못 접근하고 있는 건가요?


이까지 읽어주셔 감사합니다...도움에 손길이 필요합니다..^^


저는  android.R.layout.simple_spinner_item

이부분을 R.layout.test_textview_item이라는 레이아웃을 만들어 기본

TextView로 수정해봤습니다. 그랬더니 spinner_dropdown_item에서 선택한 값이 텍스트에 안 보이더군요..

test_textview_item.xml

 <?xml version="1.0" encoding="UTF-8"?>

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 

    android:id="@+id/test_text"

    android:singleLine="true"

    android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:ellipsize="marquee" />


위와 같은 스타일(style="?android:attr/spinnerItemStyle")을 적용하면 동일한 모양이 나오겠지만

저는 모양을 바꿔보려 합니다. 어떻게 해야하나요?