Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UILabel中NSAttributedString尾部截断_Ios_Swift_Uilabel_Nsattributedstring_Hashtag - Fatal编程技术网

Ios UILabel中NSAttributedString尾部截断

Ios UILabel中NSAttributedString尾部截断,ios,swift,uilabel,nsattributedstring,hashtag,Ios,Swift,Uilabel,Nsattributedstring,Hashtag,我用它来解析@、#和URL。这是我找到的最好的解决方案,因为它大小正确,不会影响性能。它首先在输入端解析字符串,然后将其转换为NSAttributedString,然后将其分配给UILabel的attributedText属性。除尾部截断外,所有操作都按预期进行-这是非常不正确的(见下图) 我应该从哪里开始挖掘-属性字符串上的属性是否错误?还是标签布局问题?谢谢 我遇到了这个问题,并通过添加指定所需换行模式的NSParagraphStyle来修复它: //assuming myStri

我用它来解析@、#和URL。这是我找到的最好的解决方案,因为它大小正确,不会影响性能。它首先在输入端解析字符串,然后将其转换为
NSAttributedString
,然后将其分配给
UILabel
attributedText
属性。除尾部截断外,所有操作都按预期进行-这是非常不正确的(见下图)


我应该从哪里开始挖掘-属性字符串上的属性是否错误?还是标签布局问题?谢谢

我遇到了这个问题,并通过添加指定所需换行模式的
NSParagraphStyle
来修复它:

    //assuming myString is an NSMutableAttributedString
    let paragraphStyle = NSMutableParagraphStyle()
    paragraphStyle.lineBreakMode = .byTruncatingTail

    let range = NSRange(location: 0, length: myString.mutableString.length)
    myString.addAttribute(NSParagraphStyleAttributeName, value: paragraphStyle, range: range)

请参阅以获取更多参考。

以下内容也适用于使用AttributedText或普通文本。
确保在标签设置AttributedText和font后添加下一行

label.lineBreakMode = .byTruncatingTail

你是在硬编码标签的宽度吗?