Android学习笔记(四)-----RecyclerView,WebView

本文详细介绍了Android中的RecyclerView,包括LinearRecyclerView的设置、分割线的实现、点击事件的处理,以及HorizontalRecyclerView、GridRecyclerView和StaggeredRecyclerView的使用。此外,还探讨了在LinearRecyclerView中如何使用不同的ViewHolder。接着,文章转向WebView的使用,讲解了如何加载本地和网络URL,处理网页前进后退,并设置了WebChromeClient和WebViewClient以支持JavaScript交互。
摘要由CSDN通过智能技术生成

(2-11)RecyclerView


其官方定义是:A flexible view for providing a limited window into a large data set

能够灵活的实现大数据集的展示,视图的复用管理比ListView更好,能够显示列表,网格,瀑布流等形式,且不同的ViewHolder能够实现item多元化的功能

1.LinearRecyclerView

首先建立两个Activity,RecyclerViewActivity和LinearRecyclerViewActivity,以及一个LinearAdapter.

在activity_linear_recycler_view布局文件中声明RecyclerView控件id为rv_main,在布局文件activity_recycler_view中创建一个Button控件,id为btn_linear

在LinearAdapter中

public class LinearAdapter extends RecyclerView.Adapter<LinearAdapter.LinearViewHolder> {

    private Context mContext;


    LinearAdapter(Context context){
        this.mContext = context;
    }

    //负责每个子项的布局
    @Override
    public LinearAdapter.LinearViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

        //LayoutInfluter是用于找res/layout/下的xml布局文件,并且实例化,作用类似于findViewById(),但是findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)
        //其中influte方法参数:
        //reSource:View的layout的ID
        //root:需要附加到resource资源文件的根控件,inflate()会返回一个View对象,如果第三个参数attachToRoot为true,就将这个root作为根对象返回,否则仅仅将这个root对象的LayoutParams属性附加到resource对象的根布局对象上,也就是布局文件resource的最外层的View上。如果root为null则会忽略view根对象的LayoutParams属性(注意)。
        //attachToRoot:是否将root附加到布局文件的根视图上
        return new LinearViewHolder(LayoutInflater.from(mContext).inflate(R.layout.layout_linear_item, parent, false));
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值