2015-03-12 26 views
7

nền của tôi cho đoạn của tôi có màu trắng và mũi tên cho trình quay tròn không hiển thị trừ khi tôi nhấp vào nó.Mũi tên thả xuống Spinner của Android không hiển thị

Đây là đoạn từ tập tin Java của tôi:

spinner = (Spinner)v.findViewById(R.id.spinner); 
    ArrayAdapter adapter = ArrayAdapter.createFromResource(getActivity(), R.array.accounts,R.layout.spinner_item); 
    adapter.setDropDownViewResource(R.layout.spinner_dropdown_items); 
    spinner.setAdapter(adapter); 
    spinner.setPrompt("Select an account"); 

Đây là tôi XMLfor các spinner_item

<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" 
android:textAlignment="inherit" 
android:textSize="16dp" 
android:background="#FFFFFFFF" 
android:textColor="#ff252525"/> 

Và đây là cách bố trí của tôi cho spinner_dropdown_items tôi.

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

<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" 
android:textAlignment="inherit" 
android:textSize="16dp" 
android:background="#FFFFFFFF" 
android:textColor="#ff252525"/> 

Đây là cách spinner của tôi trông với một nền trắng để mảnh của tôi: White Colour Background - Spinner Và đây là cách có vẻ khi tôi thay đổi màu nền của tôi để tím: Purple background - Spinner

Trả lời

18

này làm việc cho tôi, phần lớn đơn giản cũng như:

<Spinner 
     android:id="@+id/spinner" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:theme="@style/ThemeOverlay.AppCompat.Light" 
     android:spinnerMode="dropdown" /> 

Và trong tập tin lớp học của bạn:

spinner = (Spinner) view.findViewById(R.id.spinner); 
ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.spinner_data, android.R.layout.simple_spinner_dropdown_item); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
spinner.setAdapter(adapter); 

Hy vọng điều này sẽ giúp;)

+1

Trong trường hợp của tôi chỉ thiết lập các chủ đề làm việc. –

1

phương pháp đơn giản nhất là Đặt nền hình ảnh (với mũi tên) thay vì màu sắc.

spinner.setBackgroundResource(R.drawable.spinner_img); 

hy vọng điều đó sẽ hữu ích.

+2

tôi đã cố gắng theo cách này nhưng sau đó hình ảnh đi khắp nơi trên spinner. Tôi muốn mũi tên để đi ở bên cạnh của spinner. Vì vậy, vào phút nó trông như thế này; [https://www.dropbox.com/s/oe59pxiehktwdet/Screenshot_2015-03-12-15-10-42-1.png?dl=0] –

14

Hãy thử điều này một:

<Spinner 
    android:id="@+id/spinnPhoneTypes" 
    android:layout_width="0dp" 
    style="@android:style/Widget.Spinner.DropDown" 
    android:layout_height="@dimen/thirtyFive" 
    android:layout_marginLeft="10dp" 
    android:layout_weight="1" 
    android:background="@drawable/shape_drop_down_normal" 
    android:gravity="center_vertical" /> 

shape_drop_down_normal.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item> 
     <shape> 
      <solid android:color="@android:color/transparent" /> 

      <stroke 
       android:width="1dp" 
       android:color="#6f94c7" /> 

      <padding 
       android:bottom="10dp" 
       android:left="2dp" 
       android:right="10dp" 
       android:top="10dp" /> 
     </shape> 
    </item> 
    <item> 
     <bitmap 
      android:gravity="end" 
      android:src="@drawable/drop_arrow" /> 
    </item> 
</layer-list> 
+0

Tôi làm cách nào để thực hiện việc này? Tôi không chắc chắn làm thế nào tôi cố gắng theo cách này –

3

Chỉ cần thêm chủ đề vào thẻ spinner và bạn nên làm.

android:theme="@style/ThemeOverlay.AppCompat.Light" 
1

kiểm tra nếu bạn đang đưa ra một nền tảng cho bạn spinner và nếu bạn làm loại bỏ nó và nó sẽ giải quyết vấn đề

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