菜鸟教程小白 发表于 2022-12-12 16:39:47

iphone - 最初多次调用 tableView cellForRowAtIndexPath


                                            <p><p>我试图了解每个单元格的渲染是如何工作的。这是我的代码:</p>

<pre><code>- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdentifier = @&#34;QuestionCell&#34;;
    static NSString *cellNib = @&#34;QuestionsTableViewCell&#34;;

    UITableViewCell *cell = ;
    if (cell == nil)
    {
      //cell = [ initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
      NSArray *nib = [ loadNibNamed:cellNib owner:self options:nil];
      cell = ;      
      NSLog(@&#34;%@&#34;, @&#34;--&gt; load from nib&#34;);
    }
    return cell;
}
</code></pre>

<p>此代码中的 NSLog 最初被调用了 8 次(因为我最初有 8 行可见)。然后当我开始滚动时,它会被调用一次,然后就不再调用了。我认为它应该被调用一次,就是这样,因为它应该在第一次调用后重新使用它?为什么在最初的 8 之后再次调用它? (挠头……)</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>滚动表格 View 时,屏幕上可能有 9 个单元格。这在您开始时不需要,但是当您滚动时,需要第 9 个单元格作为顶部的离开,底部的新单元格进入。一个单元格不能分成两半重复使用。 :)</p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 最初多次调用 tableView cellForRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/6567596/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/6567596/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 最初多次调用 tableView cellForRowAtIndexPath