Tôi không thể tìm thấy trong bất kỳ nguồn thực sự đáng tin cậy nào giải thích LazyList là gì. Bất kỳ ai?LazyList là gì?
Trả lời
Danh sách lười biếng là tải hình ảnh chậm từ thẻ sd hoặc từ máy chủ bằng url. Nó giống như hình ảnh tải theo yêu cầu.
Hình ảnh có thể được lưu vào bộ nhớ trong thẻ nhớ hoặc bộ nhớ điện thoại cục bộ. Url được coi là chìa khóa. Nếu khóa có trong thẻ sd, hiển thị hình ảnh từ thẻ sd khác hiển thị hình ảnh bằng cách tải xuống từ máy chủ và bộ nhớ cache giống với vị trí bạn chọn. Giới hạn bộ nhớ cache có thể được đặt. Bạn cũng có thể chọn vị trí của riêng bạn để lưu hình ảnh. Bộ nhớ cache cũng có thể bị xóa.
Thay vì người dùng đang chờ tải xuống hình ảnh lớn và sau đó hiển thị danh sách lười, tải hình ảnh theo yêu cầu. Vì hình ảnh được lưu vào bộ nhớ cache, bạn có thể hiển thị hình ảnh ngoại tuyến.
https://github.com/thest1/LazyList. Danh sách Lazy
Trong getview bạn
imageLoader.DisplayImage(imageurl, imageview);
ImageLoader hiển thị phương pháp
public void DisplayImage(String url, ImageView imageView) //url and imageview as parameters
{
imageViews.put(imageView, url);
Bitmap bitmap=memoryCache.get(url); //get image from cache using url as key
if(bitmap!=null) //if image exists
imageView.setImageBitmap(bitmap); //dispaly iamge
else //downlaod image and dispaly. add to cache.
{
queuePhoto(url, imageView);
imageView.setImageResource(stub_id);
}
}
Một thay thế cho Lazy Danh sách là Phổ ảnh Loader
https://github.com/nostra13/Android-Universal-Image-Loader. Nó được dựa trên danh sách lười biếng (hoạt động trên cùng một nguyên tắc). Nhưng nó có rất nhiều cấu hình khác.Tôi muốn sử dụng **** Trình tải ảnh toàn cục **** coz nó cung cấp cho bạn nhiều tùy chọn cấu hình hơn. Bạn có thể hiển thị một hình ảnh lỗi nếu downlaod không thành công. Có thể hiển thị hình ảnh với các góc tròn. Có thể cache trên đĩa hoặc bộ nhớ. Có thể nén hình ảnh.
Trong tùy chỉnh bộ chuyển đổi constructor của bạn
File cacheDir = StorageUtils.getOwnCacheDirectory(a, "your folder");
// Get singletone instance of ImageLoader
imageLoader = ImageLoader.getInstance();
// Create configuration for ImageLoader (all options are optional)
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(a)
// You can pass your own memory cache implementation
.discCache(new UnlimitedDiscCache(cacheDir)) // You can pass your own disc cache implementation
.discCacheFileNameGenerator(new HashCodeFileNameGenerator())
.enableLogging()
.build();
// Initialize ImageLoader with created configuration. Do it once.
imageLoader.init(config);
options = new DisplayImageOptions.Builder()
.showStubImage(R.drawable.stub_id)//display stub image
.cacheInMemory()
.cacheOnDisc()
.displayer(new RoundedBitmapDisplayer(20))
.build();
Trong getView của bạn()
ImageView image=(ImageView)vi.findViewById(R.id.imageview);
imageLoader.displayImage(imageurl, image,options);//provide imageurl, imageview and options
Bạn có thể cấu hình với các tùy chọn khác cho phù hợp với nhu cầu của bạn.
Cùng với Trình tải hình ảnh phổ dụng/tải nhỏ, bạn có thể xem chủ để cuộn và hiệu suất mượt mà. http://developer.android.com/training/improving-layouts/smooth-scrolling.html.
Tôi nghĩ đây là cách khác. AFAIK, Lazy Loading là định nghĩa, nơi bạn thực sự tải dữ liệu chỉ khi bạn cần, và đó là một thực hành thiết kế tốt.
Vì vậy, tôi tin rằng điều tương tự cũng áp dụng cho điều này, chỉ lần này nó đang được đề cập đến Chế độ xem danh sách.
Nếu tôi sai, vui lòng sửa tôi.
Ví dụ tốt nhất về danh sách lười là thông báo, tin nhắn, yêu cầu trên facebook. khi bạn cuộn thì dữ liệu sẽ được tải.
AFAIK, tôi sẽ giải thích cho bạn ví dụ Nếu bạn liệt kê nhiều hình ảnh có văn bản, sẽ mất một thời gian để tải danh sách của bạn vì bạn cần tải xuống hình ảnh và bạn cần đưa chúng vào danh sách . Giả sử nếu danh sách của bạn chứa 100 hình ảnh Sẽ mất rất nhiều thời gian để tải xuống từng hình ảnh và hiển thị danh sách đó. Để khiến người dùng đợi cho đến khi tải hình ảnh không thân thiện với người dùng. vì vậy những gì chúng ta cần làm. Tại thời điểm này danh sách lười biếng đi vào hình ảnh. Đó là ý tưởng cho phép hình ảnh được tải trong nền và hiển thị văn bản có nghĩa là trong khi.
Mọi người đều biết rằng chế độ xem danh sách sẽ tái chế chế độ xem của nó cho mỗi chế độ xem. ví dụ: nếu listview của bạn chứa 40 elemtns thì listview sẽ không cấp phát bộ nhớ cho 40 mục thay vì nó cấp phát bộ nhớ cho các mục hiển thị, tức là bạn chỉ có thể xem 10 mục cùng một lúc. do đó listview sẽ phân bổ 10 mục meemory.
Vì vậy, khi bạn di chuyển chế độ xem, khi đó chế độ xem sẽ làm mới. vì bạn sẽ mất tham chiếu đến hình ảnh và bạn cần phải tải chúng xuống. để tránh điều đó, bộ nhớ đệm được đưa vào hình ảnh.
Ví dụ này dựa trên kiến thức của tôi trong listview, tôi không nói điều này chỉ đúng. Có thể có sai trong câu trả lời, nếu bất kỳ cơ thể nào cảm thấy tự do để thông báo cho tôi.
- 1. Trình tự so với LazyList
- 2. deserialize lazylist bằng cách sử dụng jackson
- 3. Lớp Trình tải hình ảnh tạo thư mục lazylist trong thư viện. Cách tránh nó
- 4. Tên giao diện mạng iOS chính xác là gì? pdp_ip là gì? ap là gì?
- 5. JAF là gì? Mục đích của nó là gì?
- 6. DTO và BO là gì? Sự khác biệt là gì?
- 7. DLL un/managed là gì? Mã un/managed là gì?
- 8. Phương pháp __del__ là gì, Cách gọi nó là gì?
- 9. Khung PHP là gì và khung tốt nhất là gì?
- 10. Chủ đề là gì (Chủ đề là gì)?
- 11. Tệp xcscheme là gì? Mục đích của nó là gì?
- 12. Git pull là gì. làm gì?
- 13. Làm gì? trong C nghĩa là gì?
- 14. "Trả về false" là gì? làm gì?
- 15. tempuri.org là gì?
- 16. Đại biểu là gì?
- 17. Hibernate.default_schema nghĩa là gì?
- 18. Lỗi bus là gì?
- 19. NSZombie là gì?
- 20. Lambda là gì?
- 21. nhanh hơn là gì?
- 22. /([^.]*)\.(.*)/ có nghĩa là gì?
- 23. IDisposable là gì?
- 24. dll là gì?
- 25. Lua, Lua là gì?
- 26. Pagelet là gì?
- 27. Tab dọc là gì?
- 28. Chỉ mục là gì?
- 29. innodb_buffer_pool_size & innodb_log_file_size là gì?
- 30. Tệp crossdomain.xml là gì?
Hey raghu, tôi không thể tìm nạp hình ảnh từ uri địa phương, bạn có thể giúp đỡ không ?? http: //stackoverflow.com/questions/20109034/lazy-list-fetching-images-from-sdcard-local-url –
tuyệt vời giải thích, vì vậy danh sách lười biếng là tương tự như picasso hoặc lướt? – Fshamri
@ user2198400 đó là những thư viện lưu trữ hình ảnh. Có họ giúp đỡ trong tải lười biếng. Cũng đọc về cơ chế tái chế listview. – Raghunandan