如题
删除前删除的时候会这样子
注意:上面一个cell消失了一部分
当删除完成后 又会回复 正常
搞了一天了 都不知道问题出在哪里
好纠结

解决方案 »

  1.   

    你删除代码怎么写的?
    一般来说先将数据源中对应的记录删掉,再通过tableView的reloadData方法或动画删除方法更新UI就行了
      

  2.   

    [viewController.data removeObjectAtIndex:(indexPath.row)];
        
    [viewController.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationRight];
    错误应该不是这边    
      

  3.   


    [viewController.data removeObjectAtIndex:(indexPath.row)];
        
    [viewController.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationRight];
    错误应该不是这边    
      

  4.   

    恩,去Cell里面看看。你在Cell的layoutSubviews方法里下断点,删除的时候命中,找到上面那一个cell,看看是不是和布局有关
      

  5.   


    我用的cell是从xib文件中加载的布局
    怎么调试
      

  6.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
      

  7.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
      

  8.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
    方不方便提供Demo?
      

  9.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
    方不方便提供Demo?代码涉及的太多   提取不出来demo 
      

  10.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
    方不方便提供Demo?代码涉及的太多   提取不出来demo 
    等我一下   我搞的demo出来
      

  11.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
    方不方便提供Demo?
    demo 
    怎么给你??
      

  12.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
    方不方便提供Demo?代码涉及的太多   提取不出来demo 
    等我一下   我搞的demo出来
    也许你搞Demo的时候问题就解决了
      

  13.   


    我用的cell是从xib文件中加载的布局
    怎么调试
    给Cell设置个背景色,看看是不是Cell的高度变了,里面的子视图没有更新,如果是布局问题的话,在Xib里检查下布局
    这个我也试过 了   我给cell加上红色背景的话  
    没显示的地方还是灰色还有这个现象不是一直会出现  
    出现之后只要reloaddata之后就不会出现了  
    不过之后又回出现   
    出现时  只要不reloaddata  就会连续出现
    方不方便提供Demo?代码涉及的太多   提取不出来demo 
    等我一下   我搞的demo出来
    也许你搞Demo的时候问题就解决了
    我一开始也是这么想的  但是demo出来了  还是有错 
    http://pan.baidu.com/s/1jGtbIbO百度云的  你帮我看一下  谢谢啦  么么哒 
       要多删除几个cell  才会  出现那种现象   
    如果没有出现   你先拖动一下  在删除  
    重复这样子    、
    概率 不是很大   
    不知道什么原因 
      

  14.   

    换个删除时的动画效果,再看看结果
    [viewController.tableView beginUpdates];
    [viewController.tableView deleteRowsAtIndexPaths:deleteIndexPaths withRowAnimation:UITableViewRowAnimationFade];
    [viewController.tableView endUpdates];
      

  15.   

    刚看了下,那个空白其实是TableView。你之所以reloadData后就没问题,是因为出问题的Cell是被删除的前一个的前一个,比如你删除第10个,第8个导致第9个出了问题。我初步认为还是约束的原因,你xib和Cell的代码要优化一下。
    你可以通过在cellForRow里加入这行代码来临时解决这个问题:
    cell.layer.zPosition = indexPath.row;但是想完全解决的话,还是要把xib和Cell的代码优化一下。
      

  16.   

    和动画效果无关的,你可以试试他的demo
      

  17.   

    和动画效果无关的,你可以试试他的demo
    请问一下你是怎么分析出来的呀我那天乱试了一下   我之前cell中self.backgroundColor = [UIColor clearColor];我改成了self.backgroundColor = [UIColor whiteColor];
    也不会出现这个问题了
      

  18.   

    和动画效果无关的,你可以试试他的demo
    请问一下你是怎么分析出来的呀我那天乱试了一下   我之前cell中self.backgroundColor = [UIColor clearColor];我改成了self.backgroundColor = [UIColor whiteColor];
    也不会出现这个问题了我设置了奇偶行的颜色以及tableView的背景色,觉得你这个层级结构有点怪,因为Cell的origin是由tableView计算的,但是出问题的时候Cell的origin显示不正常