Tôi có Android ListView
được tạo với một SimpleAdapter
có nhiều mục trong đó hơn là vừa với màn hình. Sau khi danh sách đã được cuộn, tôi cần lấy vị trí trong mô hình dữ liệu của mục hiển thị đầu tiên trong danh sách.Android ListView: lấy chỉ mục dữ liệu của mục hiển thị
Về cơ bản, tôi muốn có một chức năng như: listView.getChildAt(0).getPositionInDataModel()
.
Adapter
có một vài chức năng trong đó, như getItemId(position)
trông hữu ích; tuy nhiên, việc triển khai thực hiện SimpleAdapter
chỉ trả về vị trí được truyền vào vị trí, không phải là id hàng như tôi đã hy vọng.
Giải pháp bạo lực sẽ là lấy Chế độ xem tại chỉ mục 0 và so sánh nó với chế độ xem cho từng mục trong bộ điều hợp. Tuy nhiên, có vẻ như không phải là cách dễ dàng để có được chế độ xem cho một vị trí cụ thể từ bộ điều hợp.
Mọi người đều có bất kỳ suy nghĩ nào?
Wow, tôi không thể tin rằng mình đã bỏ lỡ điều đó. Tôi đang tìm kiếm tất cả các chức năng như thế. Phải có được bởi vì nó được định nghĩa trong một lớp cha mẹ mà tôi không mong đợi nó. Vẫn quen với phong cách javadoc này ... Cảm ơn bạn đã chỉ ra! –
@RomainGuy, Bạn đã lưu hiệu suất ListView của mình ... –
Một số quan điểm giữa getFirstVisiblePosition() và getLastVisiblePosition() trả về null trong Gridview của tôi. Tôi tái chế các quan điểm mặc dù - là nguyên nhân? Tôi hy vọng rằng lượt xem có thể nhìn thấy sẽ được đảm bảo không bị vô hiệu hóa đặc biệt vì tôi có thể nhìn thấy chúng một cách trực quan. – Laurent