Trong một trong số questions trước đó của tôi, tôi đã hỏi (và tự trả lời bài đăng trên blog this) về cách xử lý chính xác đầu vào chính trên RecyclerView
.Thêm hỗ trợ bàn phím thích hợp vào RecyclerView
Bây giờ tôi nhận ra rằng nếu tôi giữ phím mũi tên, hãy nhấn phím xuống, các điểm dừng di chuyển xuống và số RecyclerView
sẽ mất tiêu điểm, có thể do cuộn nhanh hơn thế hệ của tất cả các trẻ em View
s.
Có cách giải quyết nào hay thực hành tốt hơn để xử lý đúng cách đầu vào bàn phím phần cứng trên RecyclerView
không?
Cập nhật:
tôi xuất bản một ví dụ cơ bản here, nó hoạt động hoàn hảo bây giờ, không tập trung hơn thua lỗ.
Đỗ bạn có một [mcve]? Tôi vừa thêm hỗ trợ bàn phím vào một 'RecyclerView' ngày hôm qua, dọc theo dòng cách bạn đang thực hiện nó. Trong trường hợp của tôi, đó là một 'RecyclerView' toàn màn hình, vì vậy tôi không có bất kỳ vấn đề tiêu điểm nào. Nó sẽ dễ dàng hơn cho mọi người để giúp bạn vượt qua một vấn đề nếu chúng ta có một thực hiện cụ thể của vấn đề. – CommonsWare
@CommonsWare Tôi sẽ tạo ví dụ của tôi càng sớm càng tốt. Tôi nghĩ bạn có thể thử thêm chế độ xem có thể lấy nét (ví dụ: nút) bên dưới RecyclerView của bạn và sử dụng tập dữ liệu lớn trong bộ điều hợp, giả sử là 100 mục. Bạn sẽ thấy trọng tâm hành xử kỳ lạ. – Vektor88
Tôi sẽ poke vào ngày mai này. Tôi đã thấy các kết quả khác lạ (ví dụ: hiệu ứng bôi nhọ). Tôi nghĩ có lẽ chúng ta cần phải đợi để cập nhật 'RecyclerView' lần thứ hai cho đến sau lần đầu tiên xử lý xong, thay vì một lần cho mỗi sự kiện quan trọng. Tất cả những gì đang được nói, có một cái nhìn tập trung bên dưới một danh sách theo chiều dọc di chuyển không phải là một bàn phím tốt UX ở nơi đầu tiên. Bạn sẽ thấy cuộc thảo luận về loại điều đó trong phạm vi bao gồm các ứng dụng viết cho Android TV (hoặc người tiền nhiệm Google TV, Fire TV, v.v.). – CommonsWare