Tôi có một ListView
với các hàng tùy chỉnh. Khi bất kỳ hàng nào trong số này được nhấp vào, dữ liệu của ListView sẽ được tạo lại. Tôi muốn danh sách cuộn trở lại đầu khi điều này xảy ra.
Ban đầu tôi đã thử sử dụng setSelection(0)
trong từng hàng OnClickListener
để đạt được điều này nhưng không thành công (Tôi tin rằng vì hàng ListView
mất vị trí cuộn khi dữ liệu của nó bị vô hiệu - vì vậy lệnh gọi setSelection của tôi không được hoàn tác. Tôi vẫn không hiểu làm thế nào ListView quyết định vị trí cuộn đến sau khi hết hiệu lực, mặc dù).
Giải pháp hoạt động duy nhất mà tôi biết đã được Romain Guy đưa ra tại đây: http://groups.google.com/group/android-developers/browse_thread/thread/127ca57414035301
Nó liên quan đến ( View.post
) nhập cuộc gọi đến _listView.setSelection(0)
. Tôi thấy điều này thực hiện khá kém. Danh sách mới được tạo hiển thị với vị trí cuộn của nó không thay đổi và có một độ trễ đáng kể trước khi nó cuộn trở lại đầu trang.
Có cách nào tốt hơn để đạt được chức năng này không?
Bất kì sự trợ giúp nào đều được đánh giá cao.
Cảm ơn!