itemCount  = itemProperties.size. After listView is loaded, itemCount = itemProperties.size = listItemData.size. itemProperties are the original properties input by user. listItemData contains properties that processed and merged with default properties. Basically getItemAt() returns itemProperties, but populateViews() uses listItemData since we don't want to parse massive data at rendering.