菜鸟教程小白 发表于 2022-12-13 16:12:33

ios - UITableView 中需要多次点击以进行复选标记


                                            <p><p>温柔点,我在学习。</p>

<p>下面的代码实际上可以正常工作,除了在我第一次点击一行(适本地放置一个复选标记)之后,我必须点击一个单元格两次才能让它删除相同的复选标记。</p>

<p>同样,在删除它之后,它需要点击两次才能将复选标记放回去。 </p>

<p>我该如何解决这个问题?</p>

<pre><code>- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *thisCell = ;
    NSInteger selectedRow = indexPath.row;

    if (thisCell.accessoryType == UITableViewCellAccessoryNone) {
      thisCell.accessoryType = UITableViewCellAccessoryCheckmark;
      if (selectedRow == 0) dm = 1;
      else if (selectedRow == 1) athero1 = 1;
      else if (selectedRow == 2) athero2 = 1;
      else if (selectedRow == 3) athero3 = 1;
      else if (selectedRow == 4) familyHistory1 = 1;
      else if (selectedRow == 5) familyHistory2 = 1;
    }
    else{
      thisCell.accessoryType = UITableViewCellAccessoryNone;
      if (selectedRow == 0) dm = 0;
      else if (selectedRow == 1) athero1 = 0;
      else if (selectedRow == 2) athero2 = 0;
      else if (selectedRow == 3) athero3 = 0;
      else if (selectedRow == 4) familyHistory1 = 0;
      else if (selectedRow == 5) familyHistory2 = 0;
    }
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>确保 <code>allowsMultipleSelection</code> 未设置为 <code>YES</code>。不使用该属性时设置的默认值为<code>NO</code>。如果您在类(class)的任何地方使用此属性,请尝试将其设置为 <code>NO</code> 以检查它是否有效。这将导致需要点击 2 次才能选择一行。</p>

<pre><code>self.tableView.allowsMultipleSelection = NO;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - UITableView 中需要多次点击以进行复选标记,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/12335728/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/12335728/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - UITableView 中需要多次点击以进行复选标记