完成在Listview中加载自定义适配器后调用函数

时间:2014-07-09 07:31:51

标签: android custom-adapter

ListView如果默认ListView是谁的身份

android:id="@android:id/list"

以下是我用来设置Adapter

的代码
getListView().setAdapter(mAdapter);

我希望在Adapter完全加载后调用方法。

1 个答案:

答案 0 :(得分:0)

如果在向用户显示每个子视图至少一次之后仍然需要调用回调(因为看起来这是您想要实现的),请在适配器中尝试这个经过测试的代码:

private boolean mFullyLoaded = false;

@Override
public View getView(int index, View convertView, ViewGroup parent) {
    if (convertView == null) {
        // inflation code here
    }
    if (!mFullyLoaded && index == getCount() - 1) {
        mFullyLoaded = true;
        // "fully loaded"-code here
    }
    return convertView;
}

底部if子句仅在显示ListView的最底层子节点时才为true。此时,只要您没有手动设置滚动位置并因此跳过某些孩子,每个子视图至少加载/显示一次。 boolean-flag确保代码只触发一次。