个人的一些疑问以及对改进listView的看法

首先提出我的疑问:我有大概24条左右的数据,有5条是放在listview中,希望滚动到末尾的时候能新加上3条,但是addEventListenerScrollView方法会执行好几次,即使我加上了判断条件,那也只能执行一次添加3条而已,没有做到多次加载,有没有办法去控制这个呢?
void AchieveLayer::listScrollCallback(CCObject* obj,ScrollviewEventType type){
if(type==SCROLLVIEW_EVENT_SCROLL_TO_BOTTOM&&totalItemNum>0){
int count=addItemNum;
for(int i=0;i<count;i++)
{
UIImageView* temp=dynamic_cast<UIImageView*>(uilayer_main->getWidgetByName(“Image_achieveCopy”));
UIImageView* button=(UIImageView*)temp->clone();
button->setVisible(true);
uilist_item->pushBackCustomItem(button);
addItemNum–;
totalItemNum–;
}
}
}
其中additemNum是每次加载的个数,totalItemNum是总共需要加载的个数。
然后是我个人提出的一点点小建议:
相信很多人使用listview事件监听的时候都会遇到多次调用的情况,据说是触摸类型混淆造成的,我想很多时候,大家只需要滚动到底部的时候,只需要执行一次就够了,大部分是用于实现动态加载的功能,因此,能不能添加一个新的监听方法,使得执行次数为1呢?

你需要对事件类型做判断,因为开始和结束都会调用这个函数。

判断另外一个到底部的事件, 值应该是6

:10: 什么事件类型?是指SCROLLVIEW_EVENT_BOUNCE_TOP之类的吗?之前我用的是没有BOUNCE作为参数的事件标识,但是会发现执行很多遍