Adapter 一些建议
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc các API của LoadMoreAdapter, MultiItemTypeAdapter và ItemViewDelegate, tập trung vào các phương thức được liệt kê và hành vi của constructor. Tách bốn thay đổi được đề xuất thành các quyết định có phạm vi độc lập; được xem là hoàn tất khi các maintainer đã thống nhất về một phạm vi cụ thể và hành vi bị ảnh hưởng được các kiểm tra hiện có của repository bao phủ.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
你好,看了你的代码,觉得很不错。在使用这个库的时候有几个想法:
关于LoadMoreAdapter
-
关于设置:hasLoadMore 这个方法是private。为什么不能设置 getter setter?很多时候加载更多的时候,如果没有更多的时候,能简单的设置hasLoadMore 不是更好吗?
-
错误处理,如果我在加载loadMore的时候,如果出现错误,如何显示一个错误的item?点击重新刷新?
关于 MultiItemTypeAdapter 数据安全 :
- 你的adapter 的 构造函数里面要求传入 List, 你将传入的赋予mData。 其实我觉得最好是你自己内部建立一个空的List, 避免null指针
public class MultiItemTypeAdapter<T> extends RecyclerView.Adapter<ViewHolder> {
protected Context mContext;
protected List<T> mDatas = new ArrayList<>();
protected ItemViewDelegateManager mItemViewDelegateManager = new ItemViewDelegateManager();
protected OnItemClickListener mOnItemClickListener;
public MultiItemTypeAdapter(Context context) {
mContext = context;
}
public void addData(List<T> datas) {
mDatas.addAll(datas);
}
public void setData(List<T> datas) {
mDatas.clear();
mDatas.addAll(datas);
}
关于 ItemViewDelegate
RecycleViewAdapter 有两个基本方法:
onCreateViewHolder
onBindViewHolder
个人觉得可以把 ItemViewDelegate#convert(ViewHolder holder, T t, int position); 分为两个方法 :
void create(View view); 这个方法用来初始化ViewHolder里面的Views (现在很多人喜欢用 butterKnife)这个方法在 onCreateViewHolder 调用
void convert(T t, int position); 这个方法在 onBindViewHolder 调用
因为在create()里面已经初始化了所有views 所以就不需要 ViewHolder holder 来调用 譬如
holder.setText() 这样的方法
- Ngôn ngữ chính
- Java
- Star
- 4.7k
- Fork
- 1.2k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của hongyangAndroid/baseAdapter
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
hongyangAndroid/baseAdapter#122 ·
-
含泪放弃维护了 Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 1/100
hongyangAndroid/baseAdapter#136 ·
-
鸿洋大神不维护了,我开源个基于dataBinding的 Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 10/100
hongyangAndroid/baseAdapter#134 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
hongyangAndroid/baseAdapter#133 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 20/100
hongyangAndroid/baseAdapter#131 · 2 bình luận · 1 reaction ·
Tất cả issue của hongyangAndroid/baseAdapter
Issue tương tự
-
area-deployment area-integrations triage:bot-seen
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 86/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
apache/flink-agents#1156 ·
-
[source-shopify] FAILED bulk operation without partialDataUrl is silently treated as successful Đang mởarea/connectors autoteam community connectors/source/shopify needs-triage team/use type/bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100