菜鸟教程小白 发表于 2022-12-12 21:48:42

ios - UITableView 分隔线在显示中不稳定


                                            <p><p>我有一个自定义 UITableViewCells 的表格 View ,当它们被触摸时会展开和收缩(以显示信息)。不幸的是,根据交互的位置,某些单元格的分隔符(在单元格框架的顶部/底部)会消失。它使它们看起来好像两个单元格合二为一。</p>

<p>以下是我认为相关的代码(如果需要更少/更多,请告诉我):</p>

<pre><code>- (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    DynamicTableViewCell *selectedCell = (DynamicTableViewCell *);
    Trinomial *currentTri = ;
    switch (currentTri.cellDetailActive) {
    case YES:

      selectedCell.detailLabel.hidden = YES;
      ;
      currentTri.cellDetailActive = NO;
      ;
      ;

      break;
    case NO:

      selectedCell.detailLabel.hidden = NO;
      ;
      currentTri.cellDetailActive = YES;
      ;
      ;

      break;

    default:
      NSLog(@&#34;Serious application error. BOOLEAN contains no value in -&#34;);
      break;
}
}
</code></pre>

<p>这里是设置行高的方法:</p>

<pre><code>- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

Trinomial *tri = ;

if (!tri.cellDetailActive)
    return 55;
else
    return 110;
}
</code></pre>

<p>我的问题的图片发布在下面。过程是单元格拥有一个属性,该属性告诉是否显示详细信息,并且我使单元格高度发生变化(通过 <code>-</code> 和 <code>-</code>),然后根据最后的显示模式隐藏或取消隐藏某些 View 。 </p>

<p> <img src="/image/hTZvr.png" alt="Missing separator between collapsed cells"/>
<img src="/image/5qgHN.png" alt="Missing separator between expanded cells"/>
<img src="/image/sAgC2.png" alt="Separator present between collapsed cells"/>
<img src="/image/rtwEr.png" alt="Separator present between expanded cells"/> </p>

<p>如果我需要澄清/详细说明任何信息或提供任何其他 Material ,请告诉我。提前感谢您的帮助!</p>

<p><strong>编辑:</strong>
不知何故,我将此方法的两个版本合并在一起,其中代码不正确。 <code>-</code> 应该如何工作是从核心数据获取结果 Controller 接收到一个对象,其中包含一个名为 <code>cellDetailActive</code> 的属性,该属性检查单元格是否扩大与否。该单元格没有 cellDetailActive 属性,抱歉。</p>

<p><strong>编辑#2:</strong>
好的,我向 Apple Bug Reporter (#17295019) 提交了一个名为“表格 View 单元格分隔符随着单元格高度变化而消失”的错误。好吧,这个标题有点误导,因为 Apple 的开发人员回复我说因为 <code>-</code> 直接在表格 View 单元格上被调用,所以我遇到了分隔符问题。相反,建议在我的 switch 语句中使用 <code></code> 以及 <code></code>。 </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我认为这只是一个错误。我解决它的方法是将分隔符设置为 None 并绘制我自己的单元格背景,其中包括一条用作分隔符的线。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - UITableView 分隔线在显示中不稳定,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/23283032/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/23283032/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - UITableView 分隔线在显示中不稳定