我有一个自定义列表,其中包含大约 20 个项目和每个项目三行。我使用 Log 来跟踪如何调用 getView 方法
public View getView(int position, View convertView, ViewGroup parent) {
Log.e("getView", "at position " + position);
View view = convertView;
if (view == null) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
view = inflater.inflate(resourceId, parent, false);
}
// my code here
}
然后,当列表项加载时,我收到了这个日志
"getView", "在位置 0"; "getView", "在位置 1"; "getView", "在位置 2"; "getView", "在位置 3"; "getView", "在位置 0"; "getView", "在位置 1"; "getView", "在位置 2"; "getView", "在位置 3"; "getView", "在位置 4"; "getView", "在位置 5"; .....................
谁能告诉我为什么 getView 方法从 0 到 3 调用了两次?