为什么我的 ExpandableListView 的 .getChildCount() 总是零?

Why is .getChildCount() always zero for my ExpandableListView?

我有一个 ExpandableListView,声明为:

private ExpandableListView mELV_PredefinedFruit;

并使用 extends BaseExpandableListAdapter 的适配器。它在屏幕上正确显示 2 组中的各种 children(均展开)。 但是我总是得到零,我在末尾检查 children 的数量 Activity onCreate 使用以下内容:

int numberOfChildViews = mELV_PredefinedFruit.getChildCount();
Log.d(LOG_CLASS, String.format(Locale.US, "%s number of child views in ELV:  %d", METHOD, numberOfChildViews));

为什么总是零?

你得到 0,因为你的视图还没有准备好。 试试这个:

mELV_PredefinedFruit.post(new Runnable() {
    @Override
    public void run() {
        int numberOfChildViews = mELV_PredefinedFruit.getChildCount();
        Log.d(LOG_CLASS, String.format(Locale.US, "%s number of child views in ELV:  %d", METHOD, numberOfChildViews));
    }
});