Tôi muốn hiển thị hai giá trị trong chế độ xem thả xuống của xoay tròn.Ví dụ về mục spinner setDropDownViewResource tùy chỉnh
Hiện tại, tên này chỉ có tên thành phố, nhưng tôi cũng muốn thêm một trường khoảng cách nhỏ vào đó.
MyCity<MyCityDistance> dataAdapter;
dataAdapter = new MyCity(this, R.layout.mycityrow, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
tôi có tất cả các mã cho bộ chuyển đổi dữ liệu tùy chỉnh, exapanding xem và giữ của tôi, vv
Tuy nhiên, mục mà được chương trình không hiển thị cả các thành phố và khoảng cách của nó từ vị trí hiện tại của tôi.
Nó chỉ hiển thị những gì được ghi đè trong phương thức toString() của lớp MyCityDistance.
Tôi thậm chí còn cố gắng thiết lập
dataAdapter.setDropDownViewResource(R.layout.mycityrow);
nhưng không thành công. Nó ném một lỗi.
04-02 11:05:22.600: E/AndroidRuntime(367): java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView
04-02 11:05:22.600: E/AndroidRuntime(367): at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:347)
04-02 11:05:22.600: E/AndroidRuntime(367): at android.widget.ArrayAdapter.getDropDownView(ArrayAdapter.java:376)
04-02 11:05:22.600: E/AndroidRuntime(367): at android.widget.Spinner$DropDownAdapter.getDropDownView(Spinner.java:332)
Ví dụ về cách tạo tùy chỉnh của riêng bạn setDropDownViewResource()
là gì?
Ngay cả khi tôi nhận xét dòng setDropDownViewResource()
, tôi cũng gặp lỗi tương tự.
Lưu ý: Hiệu ứng duy nhất mycityrow
hiện tại là phần tử đầu tiên của Spinner được hiển thị theo bố cục của mycityrow
. Tuy nhiên, khi tôi nhấp vào mở trình đơn thả xuống, bố cục đó sẽ bị mất. Tôi muốn bố trí tương tự trong quá trình lựa chọn thả xuống quá.
Tôi tự hỏi làm thế nào nó hoạt động với một phụ huynh null? –
Truyền phụ huynh là null tương đương với việc chuyển 'attachToRoot' thành false khi được tăng cường bằng cách sử dụng LayoutInflater. – st0le
Có giải pháp mã này thực hiện :) Cảm ơn –