做了這麼久的recyclerview,最近發現一個萬能適配器,--> BRVAH是一個強大的RecyclerAdapter框架,它能節約開發者大量的開發時間,集成了大部分列表常用需求解決方案,平時用到的多佈局、加載更多,加載頭佈局,尾佈局,item動畫,item點擊事件等各項都處理的非常好,接下來,看使用:
第一步,導入框架
先在 build.gradle(Project:XXXX) 的 repositories 添加:
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
然後在 build.gradle(Module:app) 的 dependencies 添加:
dependencies {
compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30'
}
第二步,使用代碼
public class QuickAdapter extends BaseQuickAdapter<Status, BaseViewHolder> { public QuickAdapter
@LayoutRes int layoutResId, @Nullable List data) { super(layoutResId, data);} @Override protected void convert(BaseViewHolder viewHolder, Status item) { viewHolder.setText(R.id.tweetName, item.getUserName()) .setText(R.id.tweetText, item.getText()) .setText(R.id.tweetDate, item.getCreatedAt()) .setVisible(R.id.tweetRT, item.isRetweet()) .linkify(R.id.tweetText); Glide.with(mContext).load(item.getUserAvatar()).crossFade().into((ImageView) helper.getView(R.id.iv)); }}第三步,使用注意
1. 繼承`BaseQuickAdapter`基類 泛型爲List<object>的數據類型 2. 重寫`convert`方法 通過viewHolder點出各種常用方法,如果有自定義控件或者viewHolder沒有提供的方法,就可以通過 getView方法來實現獲取控件,然後進行的操作。 3. 如果需要獲取當前position 可以通過viewHolder.getLayoutPosition()來獲取