2011-02-05 30 views
9

Tôi có một AutoCompleteTextView trong hoạt động của tôi thực hiện nó như thế nào. Trình đơn thả xuống được hiển thị với các mục nhập chính xác vv Vấn đề là khi chế độ xem mất tập trung, văn bản không còn hiển thị nữa. Khi lấy nét lại, văn bản sẽ hiển thị.AutoCompleteTextView vấn đề về tiêu điểm bị mất

Có ai khác có vấn đề này không? Nó là một lỗi hoặc một cái gì đó tôi đang làm sai?

+3

Hóa ra đây là một lỗi trong chủ đề ánh sáng android. Giải pháp có sẵn tại đây http://code.google.com/p/android/issues/detail?id=5237 – AverageMarcus

+2

Wow. Nó đơn giản như thêm 'android: textColor =" @ android: color/primary_text_light "' vào XML cho bố cục AutoCompleteTextView của bạn. – Nuthatch

+0

@Nuthatch Cảm ơn. Tôi vừa trải qua hai ngày chiến đấu với cùng một vấn đề. :) – Pawel

Trả lời

0

Có thể khi bạn không tập trung vào mục, TextColor giống như màu nền trên Chủ đề hiện tại. Vì vậy, bạn không thể nhìn thấy chúng, chỉ xem văn bản mục mà bạn tập trung.

Giải quyết: đặt màu khác với background_color. bạn có thể sử dụng android.R.layout.simple_dropdown_item_1line và vân vân khi bạn tạo Adapter, hoặc textViewResourceId riêng của bạn như:

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:textSize="20dp" 
    android:gravity="center_vertical" 
    android:id="@android:id/text1" 
    android:paddingLeft="6.0dip" 
    android:paddingRight="6.0dip" 
    android:layout_width="fill_parent" 
    android:layout_height="50.0dip" 
    android:textColor="@android:color/black" 
    android:textColorHighlight="@android:color/black" /> 
+0

điều này giả định 'đen' là thích hợp cho chủ đề thiết bị hiện tại. 'primary_text_light' an toàn hơn nếu bạn có nghĩa là" văn bản tối trên nền sáng " – Nuthatch

0

Đó là dễ dàng như việc thiết lập Format của TextView,

<AutoCompleteTextView 
     android:layout_width="120dip" 
     android:layout_height="wrap_content" 
     android:singleLine="true" 
     android:ems="10" 
     android:textColor="@android:color/black" /> 
Các vấn đề liên quan