(一) 自带刷新的列表-LtRecyclerView v2.x版本(LtAdapter)(基本使用)
(一) 超簡單自定義上下刷新布局-LtRecyclerView v2.x版本(基本使用)
(二) LtRecyclerView v2.x (更多實用方法)
(三) LtRecyclerView v2.x (自定義刷新View)
LtRecyclerView2.x版本比1.x版本多了幾個好用的功能,很實用
總體功能:
圖示:
:
使用:
遠(yuǎn)程倉庫引用:
在根項目的build.gradle文件中加入:
allprojects {repositories { ...maven { url 'https://jitpack.io' }} }需要添加的地方加入:
implementation 'com.github.ltttttttttttt:ltviews:2.8.0'//androidx //下面的是support包中的,已被廢棄,全面改用androidx包 implementation 'com.github.ltttttttttttt:ltviews:2.3.9'//android support 以后不再進(jìn)行更新正式使用
3.xml布局文件中:
????<com.lt.ltviews.lt_recyclerview.LTRecyclerViewandroid:id="@+id/rv"android:layout_width="match_parent"android:layout_height="match_parent"app:dividerHeight="1dp" //設(shè)置分割線的高度,默認(rèn)顏色是#d5d5d5app:noItemText="暫無數(shù)據(jù)" //設(shè)置沒有數(shù)據(jù)時展示的文字 />在Application的onCreate中:
LtRecyclerViewManager.INSTANCE.init(this);4.java代碼使用示例,只需要set一個適配器和加一個加載的回調(diào)即可
rv = (LTRecyclerView) findViewById(R.id.rv);//創(chuàng)建一個適配器LtAdapter adapter = new LtAdapter() {@Overridepublic RecyclerView.ViewHolder onLtCreateViewHolder(ViewGroup parent, int viewType) {//在這里返回一個ViewHolder,構(gòu)造里放需要展示的Viewreturn new RecyclerView.ViewHolder(new TextView(getApplicationContext())) {};}@Overridepublic int getLtItemCount() {//適配器展示多少條數(shù)據(jù)return 100;}@Overridepublic void onLtBindViewHolder(RecyclerView.ViewHolder holder, int position) {//給View設(shè)置數(shù)據(jù)((TextView) holder.itemView).setText("" + position);}};adapter.setOnRvItemClickListener(new OnRvItemClickListener() {@Overridepublic void onItemClick(View itemView, int position) {//條目的點擊事件}});rv.setAdapter(adapter).setOnUpAndDownListener(new OnUpAndDownListener() {@Overridepublic void up() {//上拉加載時的回調(diào)}@Overridepublic void down() {//下拉刷新時的回調(diào)}});//設(shè)置每行有多少個條目,默認(rèn)是1rv.setSpanCount(3);5.設(shè)置刷新狀態(tài)的方法
????????rv.setTopRefresh(false);//設(shè)置是否下拉刷新rv.setBottomRefresh(false);//設(shè)置是否上拉加載rv.notifyDataSetChanged();//刷新數(shù)據(jù)源(更新條目)6.Kotlin加持適配器(使用Kotlin語言可用),現(xiàn)在已經(jīng)封裝進(jìn)來,ps:最新版封裝的kt適配器文章:https://blog.csdn.net/qq_33505109/article/details/102916599
繼承BaseLtAdapterOneType或BaseLtAdapterOneType使用
class MAdapter(list: ArrayList<InfoBean>) : BaseLtAdapterOneType<InfoBean>(list, item_layout的id) {override fun setData(h:BaseLtViewHolder, b: InfoBean, i: Int) {h.tvTitle.text=b.title//直接使用item的view內(nèi)的id,然后使用bean類的屬性賦值,i為position,h為viewholder(為了簡單寫,所以都用了單個字母的簡寫)//使用該功能需要在對應(yīng)的model的gradle的android{}中加入下面代碼,老版的最大版本為2.7.0(已不再維護(hù)老版本,因為性能沒有這個高)// androidExtensions {// experimental = true// }} }甚至可以直接這樣快捷使用適配器,這么兩行就相當(dāng)于條目4里java代碼里的一堆
rv.adapter = ltAdapterOf(mutableListOf(""), 0) {h, b, i -> }混淆
-keep class com.lt.ltviewsx.** { *;}7.更多api和自定義放在下篇和下下篇文章(點擊查看(二)更多實用方法)
該控件已開源,Github地址:https://github.com/ltttttttttttt/ltviews
若有bug可以提出來
轉(zhuǎn)載請帶上本文鏈接,謝謝
總結(jié)
以上是生活随笔為你收集整理的(一) 自带刷新的列表-LtRecyclerView v2.x版本(LtAdapter)(基本使用)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开发奇淫巧技Tips(Android篇)
- 下一篇: (二) LtRecyclerView v