首页 > 解决方案 > 不明白为什么要扩展 baseadapter 类以及方法来自哪里?

问题描述

请参考下面的代码,因为我不明白为什么要扩展 BaseAdapter 类,而且 BaseAdapter 类中不存在这个 getcount、getitem、getview 方法。

public class Customadapter extends BaseAdapter{


public int getCount() {

    return amount.length;
}

@Override
public Object getItem(int position) {


    return position;
}

@Override
public long getItemId(int position) {


    return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {

标签: androidandroid-studioandroid-adapter

解决方案


BaseAdapter类实现ListAdapterSpinnerAdapter类。(' implements'关键字用于实现接口)

ListAdapter扩展Adapter接口。(extends关键字主要用于扩展类即创建子类)

Adapter接口包含getItem(),getItemId()getView()方法。或者,您可以使用public class Customadapter implements Adapter {}. 但问题是您应该覆盖Adapter接口内声明的所有方法。

此外,通过扩展BaseAdapter类,您可以使用许多方法,例如notifyDataSetChanged()and isEmpty(),这在许多场景中都是必不可少且有用的。

BaseAdapter有关更多信息,请参阅此官方文档: https ://developer.android.com/reference/android/widget/BaseAdapter


推荐阅读