30/09/2018, 19:40

Android Gridview

Mọi người cho em hỏi có cách nào add phần tử mới vào 1 gridview mà không cần reload lại cả list không ah?
Tks mn nhiều ah :)))

Thanh Thịnh Đới viết 21:53 ngày 30/09/2018

Nguyên lí thêm phần tử vào gird view và listview giống nhau .
Cách bình thường hay gọi adapter.notifyDataChanged nhưng nó rẽ load lại các list.
Bạn có thể sử dụng RecyclerView , notifyItemInserted(int).

http://upques.com/android

Dương Nguyễn Văn viết 21:42 ngày 30/09/2018

Có cách nào để gridView load ảnh đỡ lag không ạ?

Phi Long viết 21:54 ngày 30/09/2018

hông ạ?

Bạn thử tạo ViewHolder

Dương Nguyễn Văn viết 21:53 ngày 30/09/2018

anh có example k cho em xin với ạ

Hoàng Tiến viết 21:51 ngày 30/09/2018

Tks bạn nhiều. Tìm mãi trên StackOverFlow mà k thấy

Kgt viết 21:56 ngày 30/09/2018

Load ảnh ko lag, ko giật bạn cần dùng asyncTask mà Android SDK cung cấp. Mỗi 1 cái ảnh sẽ dùng 1 thread để hiển thị. Cần phải cache ảnh trên memory hoặc disk hoặc cả 2. Trong nhiều trường hợp bạn phải scale ảnh trước khi cache ảnh. Tức là 1 cái ảnh vài nghìn pixel x vài nghìn pixel bạn cần scale nó thành vài trăm pixel x vài trăm pixel để tránh lack of memory sau đó mới tiến hành cache.

Từ khóa AsyncTask, LruCache. Nếu bạn lười, muốn dùng kiểu black box ko cần hiểu bản chất vấn đề thì dùng 1 framework/lib load + cache ảnh, ví dụ Picasso, Volley…

Hoàng Tiến viết 21:47 ngày 30/09/2018

Btw mn cho mình hỏi thêm chút xíu. mình muốn tạo 1 lớp mờ mờ che gridview thì dùng j dc nhỉ? Tks mn nhiều

Kgt viết 21:48 ngày 30/09/2018

Dùng FrameLayout để tạo 1 layer cho view

Hoàng Tiến viết 21:43 ngày 30/09/2018

tks bạn nhé. mình setAlpha(0.5) ổn r

Bài liên quan
0