小编Pär*_*erk的帖子

为什么需要preferredMaxLayoutWidth?

为什么需要preferredMaxLayoutWidth?

UIKit参考

preferredMaxLayoutWidth

多行标签的首选最大宽度(以磅为单位).

应用布局约束时,此属性会影响标签的大小.在布局期间,如果文本超出此属性指定的宽度,则附加文本将流向一个或多个新行,从而增加标签的高度.

注意这个:

如果文本超出此属性指定的宽度,则附加文本将流向一个或多个新行

因此,一个多标签上,如果preferredMaxLayoutWidth没有设置属性,将文本只是去超越boundsUILabel为什么我们希望在我们明确设置为多线的标签上发生这种情况?

这个属性存在的真正原因是什么?它是自动布局的东西吗?请解释一下,我真的很想了解这一点.

uikit ios autolayout

14
推荐指数
1
解决办法
4595
查看次数

sizeThat在视图上有约束(框架布局视图中的自动布局视图)

这不可能做到

通过在layoutSubviews中计算和设置框架,查看A的子视图.

视图B使用约束来布局它的子视图.

视图A包含许多View B实例.

视图A在布局它们时需要知道其子视图的大小,因此它会调用sizeThatFits:它们.

视图B的高度取决于它的宽度.在我的例子中,它UILabel内部有一条多线.

B应该如何实现它,sizeThatFits:以便在size传递给参数sizeThatFits:和约束的情况下返回正确的大小?

到目前为止我尝试/考虑的内容:

systemLayoutSizeFittingSize: - 不起作用,因为它没有考虑传递给它的确切大小.它不能用于指定精确的宽度,例如,当水平收缩时垂直生长的视图.它只提供最大压缩尺寸或最大尺寸.

intrinsicContentSize- 据我所知,这用于将信息传递自动布局.我们想要的是 Auto Layout 获取信息.

到目前为止,这就是我的理由.如果我犯了错误,请纠正我.请帮助我,如果有人能指出我是如何完成的,我将非常感激!

编辑:此外,也许有一些完全不同的方式来做到这一点,甚至没有使用sizeThatFits:?我唯一的要求是我可以在"外部"视图(视图A)中继续使用框架布局,在"内部视图"(视图B)中继续使用自动布局.

edit2:添加了一张图片来说明我必须解决的确切情况

edit3:忘了提,我需要支持iOS 7.0

uikit ios autolayout

6
推荐指数
1
解决办法
701
查看次数

何时以及为何调用 updateConstraints?

何时以及为何调用 updateConstraints?当覆盖时,需要在覆盖中完成哪些工作?

我已经阅读并观看了很多有关自动布局如何工作的信息,但我似乎无法完全理解它。

您是否会更新保存引用的任何特殊兴趣约束的常量,或者进行自定义,是否从视图中删除所有约束并完全重新创建它们,就像 WWDC 视频中的一个人所做的那样?

uikit ios autolayout

6
推荐指数
1
解决办法
2357
查看次数

为什么这个uint32_t强制转换在iPhone模拟器和iPhone设备上表现不同?

为什么以下代码在iPhone模拟器和设备上的行为有所不同?我在intel macbook pro上运行模拟器,该设备是iPhone 5(型号MD297KS/A).

码:

uint8_t original = 23;
uint8_t * pointerToOriginal = &original;
uint32_t * casted = (uint32_t *)pointerToOriginal;
printf("original: %u\ncasted: %u\n", original, *casted);
Run Code Online (Sandbox Code Playgroud)

在模拟器上运行时的输出:

original: 23
casted: 23
Run Code Online (Sandbox Code Playgroud)

在设备上运行时的输出:

original: 23
casted: 2755278871
Run Code Online (Sandbox Code Playgroud)

我假设转换会导致垃圾数据包含在转换整数中,因此设备输出对我有意义,但为什么整数不受模拟器中转换中引入的额外数据的影响?

c iphone language-lawyer ios-simulator

2
推荐指数
1
解决办法
110
查看次数

标签 统计

autolayout ×3

ios ×3

uikit ×3

c ×1

ios-simulator ×1

iphone ×1

language-lawyer ×1