2015-12-12 29 views
5

Vấn đề là danh sách Spinner thả xuống bắt đầu từ dòng trên cùng của Spinner nhưng nó cần được bắt đầu từ điểm mấu chốt của Spinnerspinner thả xuống bắt đầu từ đầu spinner

trạng thái bình thường

enter image description here

Sau Bấm

enter image description here

Spinner mã XML

<Spinner 
    android:id="@+id/spnSelectLanguage" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="8dp" 
    android:layout_marginTop="16dp" 
    android:spinnerMode="dropdown" 
    android:background="@drawable/spn_lang_dropdown_selector" 
    android:gravity="center_vertical" 
    android:popupBackground="#EAEAEA" 
    android:textColor="#54a4db" /> 

Spinner spnSelectLanguage = (Spinner)rootView.findViewById(R.id.spnSelectLanguage); 
    ArrayAdapter<String> adapterLanguage= new ArrayAdapter<String> (context,R.layout.layout_lng_spinner_item,new String[]{"English","Arabic"}); 
    adapterLanguage.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spnSelectLanguage.setAdapter(adapterLanguage); 

Style.xml

<style name="SpinnerStyle" parent="android:style/Widget.ListView.DropDown"> 
    <item name="android:divider">@color/grey</item> 
    <item name="android:dividerHeight">1dp</item> 
</style> 
+0

nó không có gì nhưng 'selector' drawable. bạn có thể đặt bất cứ thứ gì làm nền. –

Trả lời

6

Trong spinner của bạn:

android:overlapAnchor="false" 
+0

không có tài sản như vậy được hiển thị cho tôi !! – r4jiv007

+0

Khách sạn này chỉ làm việc cho Api 21 trở lên –

6

Bạn có thể để thiết lập đường dây này trong mã xml Spinner bạn:

android:spinnerMode="dropdown" 
android:dropDownVerticalOffset="50dp" 

Với điều này, dropdownview của bạn sẽ bắt đầu với đầu bù đắp. Bạn có thể hardcode số bù đắp hoặc tính toán nó trong thời gian chạy và sử dụng:

setDropDownVerticalOffset(int pixels) 

khác ở: Android Spinner

Các vấn đề liên quan