【问题标题】:UILabel top alignment with multilineUILabel 顶部对齐与多行
【发布时间】:2013-10-31 10:24:42
【问题描述】:

我有一个UILabelUICollectionView 中有 4 行。当少于 4 行时,我希望文本位于顶部而不是中心。

谢谢..

【问题讨论】:

    标签: ios objective-c uilabel uicollectionview vertical-alignment


    【解决方案1】:

    实现这一点的更快方法是将 UILabel 的换行模式设置为“Clip”并添加固定数量的换行符。

    myLabel.lineBreakMode = NSLineBreakByClipping;
    myLabel.text = [displayString stringByAppendingString:@"\n\n\n\n"];
    

    此解决方案不适用于所有人 - 特别是,如果您仍想在字符串末尾显示“...”(如果它超过了您要显示的行数),则需要使用较长的代码之一——但在很多情况下,这会得到你需要的东西。

    你也应该看看this blog.. 这个链接也可以帮助你Vertically align text to top within a UILabel

    【讨论】:

    • 帮助我解决这个问题的唯一答案,这个简单的 2 行代码。非常感谢!
    • 很高兴帮助你@Tom...干杯。
    【解决方案2】:

    在斯威夫特中:

    yourLabel.lineBreakMode = NSLineBreakMode.ByClipping 
    yourLabel.text = yourString.stringByAppendingString("\n\n\n\n")
    

    【讨论】:

      【解决方案3】:

      这就是解决办法

      dispatch_async(dispatch_get_main_queue(), ^{
                  yourLabel.numberOfLines = 0;
                  [yourLabel sizeToFit];
      
      
              });
      

      【讨论】:

      • 它确实有效.. 我不明白为什么,因为这已经是主线程了
      猜你喜欢
      • 2020-12-17
      • 1970-01-01
      • 1970-01-01
      • 2014-05-20
      • 1970-01-01
      • 2017-01-28
      • 2012-05-03
      • 2015-08-13
      • 2010-11-06
      相关资源
      最近更新 更多