行尸走肉第四季1,疯狂认国旗,青岛小哥骂雅阁女
当recyclerview有下拉刷新时,有时候设计图上,体现出来的列表有头部布局,这可以通过adapter实现加载多套布局就可以,这里以加载两种布局为例说明。
先看看adapter的代码:
import android.annotation.suppresslint; import android.content.context; import android.support.v7.widget.recyclerview; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.widget.baseadapter; import com.alvin.r; import java.util.arraylist; import java.util.list; public class mainlistadapter extends recyclerview.adapter<recyclerview.viewholder>{ private list<data> list; private arraylist<itementity> jdlist; private context context; public mainlistadapter(list<data> list,arraylist<itementity> jdlist, context context) { this.list = list; this.jdlist = jdlist; this.context = context; } @override public int getitemviewtype(int position) { return list.get(position).getshowtype(); } @override public recyclerview.viewholder oncreateviewholder(viewgroup parent, int viewtype) { if(viewtype==1){ view view = layoutinflater.from(parent.getcontext()).inflate(r.layout.layout_header_main_list,parent,false); return new headerholder(view); }else{ view view = layoutinflater.from(parent.getcontext()).inflate(r.layout.item_list_main,parent,false); return new viewholderitem(view); } } @override public void onbindviewholder(recyclerview.viewholder holder, int position) { if(holder instanceof headerholder){ final headerholder headerholder = (headerholder) holder; //todo 实现相关逻辑 }else if(holder instanceof viewholderitem){ } } @override public int getitemcount() { return list.size(); } private class headerholder extends recyclerview.viewholder{ headerholder(view itemview) { super(itemview); } } private class viewholderitem extends recyclerview.viewholder{ viewholderitem(view itemview) { super(itemview); } } }
getitemviewtype()这个返回的是列表当前布局类型,在adapter加载布局时,对齐进行判断,也就是onbindviewholder()方法中进行相应的判断逻辑实现。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio开发小型对话机器人app(实例代码)
Android通过Java sdk的方式接入OpenCv的方法
Android 通过cmake的方式接入opencv的方法步骤
Android Studio finish()方法的使用与解决app点击“返回”(直接退出)
Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)
网友评论