0

我看到了直接使用 convertView 参数的 getView 实现:

if(convertView!=null)
    ...
return convertView

另一个实现调用 super.getView:

View view = super.getView( position, convertView, parent );
if(view!=null)
    ...
return view

我的问题是,什么是正确的方法?

4

2 回答 2

2

super.getView( position, convertView, parent ); _ 是不安全的,因为super它什么都不做。

getView属于Adapter接口。

在这里你可以找到代码

于 2013-05-22T10:06:43.527 回答
1

我猜你在谈论Adapter.getView()。您要扩展哪个适配器?

大多数适配器本身没有实现 getView() 并希望您在自己膨胀视图之前检查 convertView 是否为空。

我说大多数适配器,因为有例外。如果您从第三方 -lib 子类化适配器,则适配器实际上可能提供 getView() 的实现并处理视图回收。在那种情况下,你真的应该调用超类。

此外,如果您查看CursorAdapter代码,它实际上具有 getView() 的实现

于 2013-05-22T10:11:02.617 回答