7

Tôi đã phát triển một số ứng dụng trò chuyện nơi tôi có thể gửi và nhận tin nhắn. Nhưng vấn đề là bất cứ khi nào tôi gửi hoặc nhận tin nhắn, chế độ xem của người tái chế không di chuyển lên trên để các thông điệp được trao đổi trên bàn phím.Cách tự động cuộn lên Chế độ xem của người tái chế trong Android?

Tôi đã sử dụng chế độ xem tái chế được đề cập ở trên android.support.v7.widget.RecyclerView.

Trả lời

27

On cập nhật recyclerview cố gắng chạy mã này:

recyclerView.post(new Runnable() { 
    @Override 
    public void run() { 
     // Call smooth scroll 
     recyclerView.smoothScrollToPosition(adapter.getItemCount());         
    } 
}); 
+0

mã này sẽ làm gì ??? – kalai

+0

Nó sẽ cuộn recyclerview của bạn để thêm mục mới nhất. –

+0

bạn đã kiểm tra mã này chưa? –

0

Bạn đã thử RecyclerView.srollTo(int x, int y) chưa?

Chỉnh sửa: Hãy thử RecyclerView.scrollTo(0, 0) trực tiếp sau khi bạn gửi hoặc nhận tin nhắn cuối cùng.

+0

Không, tôi chưa thử. Bạn có thể giải thích nó bằng một số ví dụ – kalai

+0

// Cuộn mục từ 3 đến 20 pixel từ trên cùng linearLayoutManager.scrollToPositionWithOffset (3, 20); – mustafasevgi

2

Hãy thử các phương pháp dưới đây để tự động cuộn đến vị trí cụ thể của bạn.

adapter = new DeliveriesDateRecycleAdapter(getActivity(),sampleDatedate, position); 
       recyclerviewDates.setAdapter(adapter); 
       adapter.notifyDataSetChanged(); 
       recyclerviewDates.smoothScrollToPosition(position); 

Note: vị trí - vị trí của danh sách mà bạn muốn hiển thị.

5

tôi sử dụng đoạn mã sau để di chuyển là tự động cho đến khi vị trí cuối cùng:

recyclerView.smoothScrollToPosition(adapter.getItemCount()); 

tôi thực hiện thêm một mục mới vào danh sách.

Các vấn đề liên quan