iOS:使用 sizeWithFont:constrainedToSize:lineBreakMode 的 UILabel 动态高度:不起作用

2024-01-29

我正在努力付出我的UILabel动态高度,以便我的其他标签布局在横向和纵向上看起来都是正确的。

在纵向中,我的文本会换行到第二行,而在横向中则不会。所以,当使用sizeWithFont:constrainedToSize:lineBreakMode:当我假设当文本是两行时它会是一个更大的数字时,双向旋转时我得到相同的高度。

我怎样才能得到我的高度UILabel当它有两行或更多文本(纵向)并获得新高度(一行)时,在横向时?

我想我不明白如何让动态高度发挥作用......

UILabel *itemTitle = [[UILabel alloc] initWithFrame:CGRectMake(10.0f, top, screen.size.width - 20, 200.0f)];
itemTitle.text = self.newsAsset.title;
itemTitle.adjustsFontSizeToFitWidth = NO;
itemTitle.autoresizingMask = UIViewAutoresizingFlexibleWidth;
itemTitle.font = [UIFont boldSystemFontOfSize:18.0];
itemTitle.textColor = [UIColor blackColor];
itemTitle.shadowColor = [UIColor whiteColor];
itemTitle.shadowOffset = CGSizeMake(0, 1);
itemTitle.backgroundColor = [UIColor blueColor];
itemTitle.lineBreakMode = UILineBreakModeWordWrap;
itemTitle.numberOfLines = 0;
[itemTitle sizeToFit];

// Set the height
CGSize maximumLabelSize = CGSizeMake(300,9999);
CGSize titleSize = [itemTitle.text sizeWithFont:itemTitle.font constrainedToSize:maximumLabelSize lineBreakMode:itemTitle.lineBreakMode];

NSLog(@"Height: %.f  Width: %.f", titleSize.height, titleSize.width);

//Adjust the label the the new height
CGRect newFrame = itemTitle.frame;
newFrame.size.height = titleSize.height;
itemTitle.frame = newFrame;

// Add them!
[headerView addSubview:itemTitle];
[itemTitle release];

top += titleSize.height;

更改您设置的行maximumLabelSize to

CGSize maximumLabelSize = CGSizeMake(headerView.bounds.size.width, CGFLOAT_MAX);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS:使用 sizeWithFont:constrainedToSize:lineBreakMode 的 UILabel 动态高度:不起作用 的相关文章

随机推荐

  • AngularJs 嵌套 ng-repeat 过滤器

    我有一个要过滤的分组嵌套对象 该过滤器仅适用于第二组
  • 如何查找sql​​ server中一个表的所有依赖关系

    我有一个数据库 其中有表 过程 视图和触发器的列表 但我想要一个查询来获取表的所有依赖项 包括引用父表的子表 我们可以使用以下方法来检查依赖关系 方法一 使用sp depends sp depends dbo First GO 方法二 使用
  • SQL Server 自动标识字段的最大大小

    SQL Server 标识字段 int 的最大大小是多少 我每天会在几个表中多次删除和插入数百条记录 我很好奇这会对自动身份字段产生什么影响 我可以每天晚上左右运行一项作业 并根据需要截断这些数据 我很感激你的想法 谢谢 INT 最多可达
  • 圆形 div 中的文本溢出

    我有一个圆形 div 但我的文本不在其中 默认情况下它略高于我无法查明原因 我在顶部添加了边距以将其强制放在 div 内 但我确信有更好的方法来执行此操作 因为我的方法仅适用于一定数量的文本 div description display
  • 如何在C/C++中存储和调用已编译的函数?

    对于非常低级别的优化目的 如果我可以将编译后的函数直接存储在变量中 这对我很有用 not指向函数的指针 也就是说 如果我有一个函数 foo 我想创建一个足够大的 char 缓冲区来容纳为 foo 生成的机器指令 然后能够通过某种方式告诉 C
  • 将值从 for 循环转换为 json 格式

    下面是一个 for 循环的片段 我在其中对 txt 文件名进行排序 然后我尝试将结果保存在 json 格式文件中 但是 由于最后一个原因 它会导致无效的 json 格式 插入obj 我如何将 for 循环中的值转换为 json 格式 scr
  • PHP MySQLi OOP 中“->”和“::”的区别

    谁能说出两者之间的区别mysqli gt commit and mysqli commit 标头在这一页 http php net manual en mysqli commit php is mysqli commit 但在示例中他们使用
  • JSTL 访问哈希图中的整数/长键

    我在 JSTL 中使用 EL 时遇到一些问题 无法按照我的意愿访问 Java Hash Map 我知道在 EL 中 如果 Integer 被作为 Long 访问 则该键是关键 我尝试在 JSTL 中访问以下哈希映射定义 Map
  • Mocha 测试的伊斯坦布尔代码覆盖率

    我正在努力让伊斯坦布尔运转起来 在伊斯坦布尔跑步结束时 我不断收到此消息 未收集覆盖范围信息 退出而不写入覆盖范围 信息 我已经尝试了网上能找到的所有方法 如您所见 scripts start node bin start js test
  • 以特定格式将“词典的词典”写入 .csv 文件

    我正在从多个 csv 文件生成一个字典 它看起来像这样 示例 dtDict AV IM 1 13991730 6 1 2014 0 10 0 96 6 1 2014 0 15 0 92 6 1 2014 0 20 0 97 AV IM 1
  • Admob 显示测试广告,但不显示真实广告

    我正在使用 admob 来展示 Android 广告 测试广告运行良好 但未显示真正的广告 另外 我对真正的插页式广告没有任何问题 因为它们工作得很好 只是真正的横幅广告没有出现 我的java代码是 private Interstitial
  • 在传递给模拟函数的参数上调用成员函数的最简单方法是什么?

    给定接口 class IFooable virtual void Fooable 0 class IFoo virtual void Foo IFooable pFooable 0 和古尔模拟模拟 class TMockFoo public
  • IIS7:像 IIS6 一样设置集成 Windows 身份验证

    这适用于不属于 AD 域的 Windows Server 2008 上的 IIS 7 我想用密码保护一个网站 人们必须输入用户名 密码 例如 Windows 帐户 才能查看该网站 然后 网站将使用自己的身份验证方法 表单 来处理用户帐户并决
  • Ruby 中数组 * 字符串是什么意思?

    我正在查看一些 Rails 源代码并发现 File vendor rails activesupport lib active support vendor builder 2 1 2 builder css rb line 129 129
  • 生成最小和最大日期之间的日期范围 Athena presto SQL 序列错误

    我正在尝试使用 Presto SQL Athena 生成一系列日期unnest and sequence类似的东西generate series在 postgres 中 我的桌子看起来像 job name run date A 2021 0
  • Spring-Data-Elastic Search 和 Spring-Data-Cassandra 存在 MapId 问题

    我正在尝试让 Spring Data Cassandra 和 Spring Data Elasticsearch 一起工作 以下是我面临的问题 org springframework beans BeanInstantiationExcep
  • 使用 Java JSch 进行 SFTP 文件传输

    这是我的代码 它在远程服务器上检索文件的内容并显示为输出 package sshexample import com jcraft jsch import java io public class SSHexample public sta
  • Collada 与 OpenGL ES 的集成程度如何

    在我阅读有关 Collada 文件格式的所有内容时 我都看到一些关于 Collada 如何集成到 OpenGL ES 的提示 或其他方式 它到底有多集成 我怀疑不是 但是有直接使用 Collada 文件的函数吗 甚至是 Collada 文件
  • 解决 PHP 中不安全的随机数生成问题

    我们正在对各种 Drupal 模块运行 Fortify 扫描 常见的严重 高结果是 不安全的随机性 它指出 rand 函数无法承受加密攻击 我的问题是 这是一个严重的问题吗 如何在 PHP 中修复它 谢谢 这个问题的答案完全取决于您使用 r
  • iOS:使用 sizeWithFont:constrainedToSize:lineBreakMode 的 UILabel 动态高度:不起作用

    我正在努力付出我的UILabel动态高度 以便我的其他标签布局在横向和纵向上看起来都是正确的 在纵向中 我的文本会换行到第二行 而在横向中则不会 所以 当使用sizeWithFont constrainedToSize lineBreakM