菜鸟教程小白 发表于 2022-12-11 20:00:42

ios - iOS 11 上的 UILabel 换行过早


                                            <p><p>我有一个带有单元格表格的 iOS 11 应用程序。 </p>

<p>在这个单元格中,我有一个 UILabel。 </p>

<p>UILabel 似乎“决定”以至少 2 个单词保持底线的方式换行(无论 BreakLineMode 是什么!)。</p>

<p>我知道使用 -
添加不间断空格 (U+00A0) - 太贵了</p>

<p>和</p>

<p>在 NSUserDefaults 上使用 NSAllowsDefaultLineBreakStrategy NO - APPLE 不允许</p>

<p>我可以做些什么来解决这个问题?</p>

<p>在这张图片中,您可以看到第二行中的第一个单词,可能出现在第一行,但由于某种原因下降到第二行...</p>

<p> <a href="/image/j53yJ.png" rel="noreferrer noopener nofollow"><img src="/image/j53yJ.png" alt="enter image description here"/></a> </p>

<p><strong>编辑:</strong></p>

<p>这不是宽度问题,这是 iOS 11 新 UILabel 逻辑(!)的问题,它不允许在新行上出现孤立词(一个词),只有两个词,因为他们认为它看起来更好。它没有。但是必须有一种方法可以让 UILabel 在 iOS 11 上运行,就像在 iOS 10 及更低版本上一样。 </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我发现了一个 hack - </p>

<p>在字符串末尾添加大量空格(如 10 - 20)将使 UILabel “认为”该行足够长,因此会在底行留下一个单词。 (而不是 2 所以第一行不会提前中断)</p>

<p>我不喜欢 hacks,但这就是我目前所拥有的全部,如果有人有不同的答案,我会很乐意接受它而不是这个</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - iOS 11 上的 UILabel 换行过早,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/49751185/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/49751185/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - iOS 11 上的 UILabel 换行过早