Why:继承BaseAdapter时要重载的方法及各方法作用

在我们需要定制自己的适配器时(adapter)时我们就需要继承BaseAdapter抽象类,除了必要的构造函数外有几个函数是必须要重载的,它们是:

    public abstract int getCount()

    public abstract Object getItem(int position)   

    public abstract long getItemId(int position)

    public abstract View getView(int position, View convertView, ViewGroup parent)

个函数的主要功能:

   1.先来看一下简略流程图(不一定非常精确,但大致流程是这样):

Why:继承BaseAdapter时要重载的方法及各方法作用_第1张图片

由流程图可以看到getCount()和getView()的作用:

     1.getCount()决定了我们将要绘制的资源数,当然这个数目不能大于资源的总数,不过却可以小于资源的总数。例如我们adapter管理的资源总共有10个,而我们通过getCount()返回的只有6个,那么最终GridView绘制出来的将只有6个。

    2.getView():通过传入的参数position,加工成我们想要的View并返回,最终共GridView使用

那getItem()和getItemId()有什么用呢?我们知道,GridView将View以方格的方式展示出来之后是要与用户交互的(比如点击某张图片),为了更好的相应用户的动作,我们就要用到这两个函数了。

本文相关资源:

    1.实例截图:

Why:继承BaseAdapter时要重载的方法及各方法作用_第2张图片

    2.本文对应的实例源代码

你可能感兴趣的:(Why:继承BaseAdapter时要重载的方法及各方法作用)