【问题标题】:UILABEL line break in collectin view IOS收集视图IOS中的UILABEL换行符
【发布时间】:2014-12-25 21:28:15
【问题描述】:

我正在使用情节提要中collectionview 的单元原型。在集合视图中,我在一个单元格中设置了 UIIMAGEUILABEL,并在 viewWithTag 的帮助下以编程方式调用以加载所需的图像,以根据需要更改图像和标签。

我的问题是,我无法设置无法在单词中创建换行符的标签。换行无法给标签换行以换行,而是在一行中给标签。

我尝试通过情节提要和编程方式提供linebreak,但我无法包装我的标签,也无法在一个单词后换行。

我的代码:

UILabel *label = (UILabel *)[cell viewWithTag:200];
label.text = [NSString stringWithFormat:@"%@",name];

我的尝试:

label.numberOfLines = 0; // also tried 2 for next line
label.minimumScaleFactor = 0.5;
label.lineBreakMode = UILineBreakModeWordWrap;
label.lineBreakMode = NSLineBreakByWordWrapping;

【问题讨论】:

    标签: ios objective-c xcode uilabel uicollectionview


    【解决方案1】:

    缺少自动换行的最可能原因是UILabel 不知道它不应该超过给定的宽度。

    有两种表达方式:

    • UILabel 上设置属性preferredMaxLayoutWidth,其值指示不应超过的宽度

    • 设置正确的自动布局约束 - 您可以通过指定宽度约束或指定偏移/插入约束来做到这一点 - 这实际上取决于您正在处理的布局,因为有大量可能的组合。

    进行完整性检查的最佳方法是尝试preferredMaxLayoutWidth 方法。如果可行,请尝试通过查找自动布局右约束来决定是要保留此值集还是希望布局更加动态。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-26
      • 1970-01-01
      • 2013-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多