打造 Recyclerview 的万能 Holder CommonHolder
来源:互联网 发布:深圳赛维网络董事长 编辑:程序博客网 时间:2024/06/11 08:06
/** * RecyclerView 的通用 Holder * Created by suwenlai on 16-12-27. */public class CommonHolder extends RecyclerView.ViewHolder { /** * item里面的控件集 */ protected SparseArray<View> mViews; protected Context mContext; /** * 条目布局 */ protected View mConvertView; public CommonHolder(View itemView, Context context, ViewGroup parent) { super(itemView); mContext = context; mViews = new SparseArray<>(); mConvertView = itemView; } /** * 获取 ViewHolder * * @param context 上下文 * @param parent parent * @param layoutId item 布局文件 id * @return holder */ public static CommonHolder getHolder(Context context, ViewGroup parent, int layoutId){ View itemView = LayoutInflater.from(context).inflate(layoutId, parent, false); CommonHolder viewHolder = new CommonHolder(itemView, context, parent); return viewHolder; } /** * 通过 viewId 获取控件 * * @param viewId item 中 子view 的 id * @return 子view */ public <T extends View> T getView(int viewId){ View view = mViews.get(viewId); if (view == null){ view = mConvertView.findViewById(viewId); mViews.put(viewId,view); } return (T) view; } /** * 给 TextView 设置内容 * * @param viewId * @param s */ public CommonHolder setText(int viewId, String s){ TextView view = getView(viewId); view.setText(s); return this; } /** * 给 ImageView 设置内容 * * @param viewId * @param resId */ public CommonHolder setImg(int viewId, int resId){ ImageView view = getView(viewId); view.setImageResource(resId); return this; } /** * 给 view 设置点击监听事件 * * @param viewId * @param onClickListener */ public CommonHolder setClickListener(int viewId, View.OnClickListener onClickListener){ View view = getView(viewId); view.setOnClickListener(onClickListener); return this; }}
0 0
- 打造 Recyclerview 的万能 Holder CommonHolder
- 打造RecyclerView的万能适配器
- 打造 Recyclerview 的万能 Adapter CommonAdapter
- 为RecyclerView打造万能适配器
- Android打造万能适配器--RecyclerView
- Databinding打造RecyclerView万能适配器
- RecyclerView更全解析之 - 打造通用的万能Adapter
- Data Binding 打造RecyclerView 万能适配器
- 一步步打造Android RecyclerView万能适配器
- 万能RecyclerView 的BaseAdapter
- RecyclerView万能的Adapter
- recyclerView 的万能适配器
- RecyclerView的万能适配器
- RecyclerView的万能Adapter
- 打造万能的EmptyView
- 【工具类】打造万能的Listview、GridView和ViewPager和RecyclerView的适配器
- 偷懒新姿势,打造属于RecyclerView的万能适配器Adapter和ViewHolder
- 偷懒新姿势,打造属于RecyclerView的万能适配器Adapter和ViewHolder
- setting中打开自动旋转功能和接收sensor数据分析
- 2016年个人总结社区版
- Java多线程编程核心技术第三章笔记
- iOS 音频打断事件的处理
- sql获取时间段
- 打造 Recyclerview 的万能 Holder CommonHolder
- 英语前缀总结
- Leetcode 32 - Longest Valid Parentheses(线性dp)
- Zookeeper Api(java)入门与应用
- js对象克隆或复制
- 年度总结
- G++ 编译结果优化方式!!!!!
- JAVA图形界面之JTable
- 互联网上比较热的几个缩写名词