tableview方面的问题求助

现在我要想做的效果是 点击cell让其被标记,但拖出屏幕外重新拖进来的时候标记就没了,求助 怎样做才能让拖进来时 标记还在,不胜感激!

对Cell标记是不靠谱的,TableView采用的是MVC设计结构,如果你想标记一个Cell,必须对其对应的模型进行标记,也就是你自己的业务数据,比如你用来表示Cell的某个数组,然后在tableCellAtIndex上根据idx获取该数组的这个cell的标记,然后再对cell进行显示标记。TableView实际是仿照cocoa的UITableView做的,是苹果设计的一个相当精妙的UI类,拥有极低的内存开销和极大的灵活性,只是初学者不太容易掌握。用好TableView最重要的就是写好tableCellAtIndex,记住,TableView不会按照顺序管理cell(这是初学者最容易犯的一个错误)

得记住被点击cell的index,下次再显示的时候让这个index对应的cell选中就行

        Sprite * sprite2 = Sprite::create("ui/army_attribute/duiwu36.png");
        
        std::vector<Sprite*> sprite;
        for(int i = 0; i < idx; i++)
        {
            sprite.push_back(sprite2);
        }
        
        sprite.at(selectedCell)->setVisible(true);;

我这样做了 但还是不行啊 ,求解!

我按照下面的方式 做了 还是不行,是我做的不对吗!还请指教

Sprite * sprite2 = Sprite::create(“ui/army_attribute/duiwu36.png”);

        std::vector<Sprite*> sprite;
        for(int i = 0; i < idx; i++)
        {
            sprite.push_back(sprite2);
        }
        
        sprite.at(selectedCell)->setVisible(true);;

sprite2 是那个标记 selectedCell呗点击的Index