【问题标题】:numberOfRowsInSection running in infinite loopnumberOfRowsInSection 在无限循环中运行
【发布时间】:2014-02-07 15:55:22
【问题描述】:
 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {     
   int rows;     // Return the number of rows in the section.        
    switch (section)
    {          
         case 0:      
           rows = 1;    
           break;   
         case 1:  
            rows = 3;  
            break;    
         case 2:     
            rows = 2; 
            break;   
         case 3:   
             rows = 1;         
            break;      
         default:  
            rows = 1;         
            break;       
    }     
  return rows;
 }

此代码在无限循环中运行。首先,它返回正确的行数。但之后开始无限循环运行。 还有一件事,为什么section从最高的no开始,den到0,den按升序排列??

【问题讨论】:

  • 你想要不同的表格视图不同的部分或其他?
  • 您在 numberOfSectionsInTableView 中返回的内容:
  • @freenalcer: numberOfSectionsInTableView 返回 4 个部分。
  • 检查你在哪里重新加载tableView。也许你有一个 -reloadData 或类似的地方导致表不断重新加载

标签: objective-c ios7 uitableview


【解决方案1】:

上面的代码中没有无限循环。它很可能是从无限循环中调用的。

要找到它,在方法中放置一个断点,继续几次(以确保您处于循环中,而不仅仅是正常调用),然后查看侧面的堆栈跟踪。这应该让您清楚地了解循环的来源。您可能正在从您的数据源或委托方法之一中调用 reloadData。

【讨论】:

  • 这就是 wat m 正在寻找的东西。因为这段代码对我来说并不新鲜......仍然会出现这个错误,破坏我的应用程序。
猜你喜欢
  • 2020-05-19
  • 2016-10-18
  • 2013-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
相关资源
最近更新 更多