如何控制UIResponder.inputAccessoryView
的大小?太神奇了!
答案 0 :(得分:0)
这困扰了我很久了。
根据我在iOS 12模拟器上的经验和观察,有两种情况,
没有自动布局。
UIKit会自动添加高度限制及其 常数值取决于 加载点的附件视图。看来 约束实际上已翻译为自动调整大小 约束。您可以找到与高度相关的常数 并实际对其进行修改,但实际上是实现 细节,不建议这样做。我强烈 建议使用自动版式方法。
具有自动版式。
如果在加载点无法解决尺寸问题
附件视图,UIKit将添加一些显式
宽度/高度约束基于其合适的大小。
如果满足这些要求,则UIKit 仅使用现有约束,而不使用 改变任何东西。
intrinsicContentSize
必须返回正确的值。
如果它包含UIView.noIntrinsicMetric
,则UIKit会添加
它自己的高度限制。
视图大小可以通过自动版式系统解决。
由于这些限制由您自己设置,因此很安全 根据需要修改它们。另外,附件视图 将根据其内容调整大小,因此 这是唯一的常规和推荐方法 具有动态尺寸的布局附件视图。
具有自动版式和UIInputView.allowsSelfSizing
。
与自动版式(#2)基本相同,但是您不需要
如果将标志设置为intrinsicContentSize
,请提供true
。
这是更明确的选项。