https://github.com/son24tuoi/circular-scroll-unity.git


Cho phép người dùng cuộn nội dung và quay vòng vô hạn khi đến cuối danh sách.
Hệ thống scroll giúp tối ưu hóa hiệu năng bằng cách tái sử dụng các phần tử UI (GameObject). Thay vì khởi tạo hàng ngàn vật phẩm gây tốn bộ nhớ RAM và làm giảm tốc độ xử lý CPU, hệ thống này chỉ duy trì một số lượng nhỏ các phần tử đủ để hiển thị trên màn hình và cập nhật dữ liệu của chúng khi được cuộn.
| Tiêu chí | Scroll truyền thống | Scroll tái sử dụng |
|---|---|---|
| Số lượng Object | Bằng tổng số lượng data → data càng nhiều - object càng nhiều. | Cố định, thường gấp 2 lần số lượng có thể thấy trong vùng nhìn (viewport). |
| Tiêu tốn bộ nhớ RAM | Tăng dần theo dữ liệu | Thấp và ổn định |
pageIndex để kiểm soát giới hạn dữ liệu.CircularScrollVertical.cs/CircularScrollHorizontal.cs vào GameObject có chứa ScrollRect (đặt nơi khác cũng được 😅).ScrollRect và ContentRT cho CircularScrollVertical.cs/CircularScrollHorizontal.cs trên cửa sổ Inspector. Khai báo số lượng hiển thị danh sách tối đa vào TotalItems (hoặc set bằng code). Các biến khác hiện trên Inspector sẽ tự động cập nhật.CircularScrollVertical.cs/CircularScrollHorizontal.cs bằng hàm Init() với tham số là hàm callback cập nhật dữ liệu. Xem script mẫu ItemLoader.cs và scene mẫu Scene_CircularScroll.TryGetComponentsInContentChildren() . Xem script mẫu ItemLoader.cs và scene mẫu Scene_CircularScroll.