CCTableView problem with reloadData() Two

Create a Tableview, first loaded 0 data
numberOfCellsInTableView (CCTableView * table)
{
CCLOG (“WarListLayer”);
return arr~~> count ;

}
When the network to return data, there are 10 data
I use tableView~~> reloadData ();

tableview can not be displayed

When I drag the tableview, the tableview will be able to display.

Code:

//
// WarListLayer.cpp
// guru
//
// Created by user on 12-12-11.
//
//

#include “WarListLayer.h”
#include “VisibleRect.h”
#include “CurtomTableViewCell.h”
#include “GameSceneManager.h”

#define WAR_HERO_BG “63x63.png”
#define WAR_MSG_BG “msg1.png”
#define WAR_BTN_normal “cg_btn_normal.png”
#define WAR_BTN_PRESS “cg_btn_press.png”

WarListLayer::WarListLayer()
{
arr=CCArray::createWithCapacity(0);
arr~~>retain;
//设置委托
HttpManager::shareHttpManager~~>setHttpManagerDelegate;
//获取网络数据
HttpManager::shareHttpManager~~>getSameLevelPlayers;
}
WarListLayer::~WarListLayer
{
}

bool WarListLayer::init{
if){
return false;
}
//设置CCTableView的初始大小
tableView=CCTableView::create);
tableView~~>setDirection;
tableView~~>setPosition.x+90,VisibleRect::leftTop.y-230));
tableView~~>setDelegate(this);
tableView~~>setDataSource;
tableView~~>setVerticalFillOrder(kCCTableViewFillTopDown);
this~~>addChild;
tableView~~>reloadData();

return true;

}
#pragma mark —cell被选中
void WarListLayer::tableCellTouched(CCTableView* table,CCTableViewCell* cell)
{

CCLOG (“cjchcuh%i”,cell->getIdx());
CCLOG (“你选中第%i行”,cell->getIdx());
}

#pragma mark —设置tableiviewcell的大小
CCSize WarListLayer::cellSizeForTable(CCTableView **table)
{
return CCSizeMake;
}

static int in=0;
#pragma mark —绘制cell
CCTableViewCell**WarListLayer::tableCellAtIndex(CCTableView table, unsigned int idx)
{
CCLog;
in++;
// CCString
string=CCString::createWithFormat(“d",idx);
CCTableViewCell *cell=table->dequeueCell();
if (!cell) {
cell=new CurtomTableViewCell();
cell->autorelease();

    CCSprite \* headBg=CCSprite::createWithSpriteFrameName(WAR\_HERO\_BG);
    headBg-\>setPosition(ccp(5, 0));
    headBg-\>setAnchorPoint(CCPointZero);
    cell-\>addChild(headBg);

    //头像
    CCSprite \* infoBg=CCSprite::createWithSpriteFrameName(WAR\_MSG\_BG);
    infoBg-\>setPosition(ccp(40, 0));
    infoBg-\>setAnchorPoint(CCPointZero);
    cell-\>addChild(infoBg);

    //昵称
   // CCLabelTTF \* username=CCLabelTTF::create();
    m\_userName=CCLabelTTF::create();
   // m\_userName-\>setString("坚强的牛腩");
    m\_userName-\>setAnchorPoint(CCPointZero);
    m\_userName-\>setPosition(ccp(50, 17));
    m\_userName-\>setColor(ccBLACK);
    m\_userName-\>setFontSize(8);
    m\_userName-\>setTag(100);
    cell-\>addChild(m\_userName);

    GuRuWarDataModel \*guruWarDataModel=(GuRuWarDataModel\*)arr-\>objectAtIndex(idx);

    CCLog("xxxxx:s”,guruWarDataModel~~\>getUserName.c\_str);

m_userName~~>setString(guruWarDataModel~~>getUserName.c_str);
//签名
// CCLabelTTF * desc=CCLabelTTF::create;
// desc~~>setString(“当前排名:1000 胜:100 负:1000”);
// desc~~>setAnchorPoint;
// desc~~>setPosition(ccp(50, 5));
// desc~~>setColor;
// desc~~>setFontSize(8);
// cell~~>addChild;

CCMenuItemSprite * item1=CCMenuItemSprite::create, CCSprite::createWithSpriteFrameName, NULL, this,menu_selector);
item1~~>setPosition(ccp(250, 0));
item1~~>setAnchorPoint;

CCMenu * menu=CCMenu::create;
menu~~>setPosition(ccp(0, 0));
menu~~>addChild;
cell~~>addChild(menu);
}
else
{
GuRuWarDataModel **guruWarDataModel=arr~~>objectAtIndex;
CCLabelTTF * username=cell~~>getChildByTag;
username~~>setString.c_str);
}
return cell;
}

#pragma mark —返回tableiviewcell的行数
unsigned int WarListLayer::numberOfCellsInTableView
{
CCLOG (“WarListLayer”);
return arr~~>count;

}
//处理返回数据
void WarListLayer::callBackServerData
{
// CCLOG (“xxxx:%d”,value[“result”].asInt());
Json::Value userList=value;
std::string user=userList.toStyledString;
for ; i++) {
GuRuWarDataModel**guru=new GuRuWarDataModel();
guru~~>initWithJsonData;
arr~~>addObject(guru);
}

tableView->reloadData();

}

void WarListLayer::pressMenu(cocos2d::CCNode *pSprite){

GameSceneManager::shareGameSceneManager()->pushSceneWithID(SCENE_ID_PLAYWAR);
}


WarListLayer.cpp.zip (1.9 KB)

try this when your data size is changed

CCPoint pos = tableView->getContainer()>getPosition;
tableView
>getContainer()>setPosition) );
tableView
>reloadData();