Đối với việc kiểm soát cách bạn hiển thị các mục theo quan điểm autocomplete của bạn, bạn cần phải thiết lập các textViewResourceId trong bộ chuyển đổi của bạn. Bạn có thể sử dụng ArrayAdapter và cung cấp android.R.layout.simple_dropdown_item_1line
làm textViewResourceId như được hiển thị bên dưới.
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, yourList);
AutoCompleteTextView autocompleteView = (AutoCompleteTextView) findViewById(R.id.autocomplete_box);
autocompleteView.setAdapter(adapter);
HOẶC
nếu bạn muốn tạo phong cách riêng của bạn cho các mục hiển thị, vui lòng tạo một XML với TextView
như phần tử gốc như thế này (cho phép đặt tên là my_custom_dropdown.xml
với văn bản màu đen và nền trắng)
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:padding="5sp"
android:textColor="@color/black"
android:background="@color/white"/>
sau đó tham khảo các xml trong adapter của bạn như sau -
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,R.layout.my_custom_dropdown, yourList);
Nguồn
2012-07-11 10:03:20
Làm thế nào để bạn biết rằng bạn đang nhận được bất kỳ kết quả tự động hoàn thành, có lẽ không có gì để hiển thị là gì? Bạn đã cố gắng LOG kết quả và biết rằng có thực sự tồn tại một số kết quả? – theAlse
đăng một số mã có liên quan. –
Có, kết quả là có. Tôi đã kiểm tra điều đó. Infact nếu tôi giữ bấm vào bất kỳ mục nào, nó xuất hiện. –