菜鸟教程小白 发表于 2022-12-11 20:26:41

iphone - 如何在创建 CustomCell 之前计算文本大小


                                            <p><p>我正在创建一个包含 <code>UILabel</code> 的 CustomCell,默认情况下 <code>UILabel</code> 将有两行启用环绕的文本,但有时文本将需要三行。</p>

<p>字体类型和大小是固定的,无法更改,我试图在创建 <code>NSString</code>/<code>UILabel</code> 之前确定一种计算长度的方法 <code>UITableView</code>/<code>CustomCell</code> 以便正确设置单元格高度。将显示的文本将由许多不同的单词组成,例如'<em>你的名字是 XXXXX XXXXXX,你的生日是..</em>',而 XXXXXXX 是可变的元素。</p>

<p>希望这是有道理的,我考虑过的一个想法是创建一个方法,其中包含一个永远不会显示的 <code>UILabel</code> 并用所需的文本填充它,然后检查是否使用了 2 行或 3 行,但不知道该怎么做。 </p>

<p>有没有更优雅的方法来实现这一点?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>有几个 UIKit 函数用于计算具有各种换行模式和字体的字符串的大小。见 <a href="http://developer.apple.com/library/ios/#documentation/uikit/reference/NSString_UIKit_Additions/Reference/Reference.html" rel="noreferrer noopener nofollow">this doc</a>了解详情。</p>
<p>特别是 <code>sizeWithFont:constrainedToSize:lineBreakMode:</code> 可能对此有用。</p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 如何在创建 CustomCell 之前计算文本大小,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/7987909/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/7987909/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 如何在创建 CustomCell 之前计算文本大小