2013-03-20 27 views
6

Tôi đã tạo một listview với BaseAdapter. Tôi muốn một số danh sách có một dải phân cách, nhưng từ một số danh sách, tôi muốn xóa dải phân cách. Tôi biết bạn có thể xóa dải phân cách của toàn bộ danh sách bằng cách đặt .setDivider(null).setDividerHeight(0), nhưng cũng có thể xóa dải phân cách khỏi một danh sách duy nhất trong danh sách không?Android: xóa dải phân cách của một số danh sách trong listview

Cảm ơn trước!

Trả lời

5

Bạn có thể vô hiệu hóa dải phân cách cho toàn bộ danh sách và đặt Chế độ xem tùy chỉnh cho mỗi ListItem, ví dụ: thiết lập các bản vẽ nền khác nhau có hoặc không có đường viền dưới cùng.

+0

có vẻ như rất nhiều chi phí, nhưng tôi sợ đó là cách duy nhất để đi :( – Xander

+0

Làm thế nào để đối phó với các mặt hàng có thể click Nếu? dấu phân tách là một phần của mục danh sách, sau đó nhấp vào vùng được chọn sẽ chứa dấu tách hoặc quá trông xấu xí. – 4ybaka

2

Có bạn có thể xóa chia từ mục danh sách cụ thể bằng cách sử dụng phương pháp 'getView` trong bộ chuyển đổi của bạn (mà mở rộng baseadapter)

OFC bạn có cái gì đó như data trong bộ chuyển đổi của bạn trong đó đề cập đến các dữ liệu được hiển thị vào listview, vì vậy trong tầm kiểm soát phương pháp getview của bạn cho các mục cụ thể như thế này:

if(data[position].ID == YourElemetnsID) 
inflate with the specific list item layout 
else 
inflate with the general list item layout 
Các vấn đề liên quan