我正在自定义 View Controller 的标题 View ,以便显示(从左到右):
我希望,随着标签水平增长以容纳更长的文本,它会将按钮推向更远的右侧(标签和按钮之间的水平空间保持不变),而整个标题 View 会自行调整大小以包含标签和按钮,同时保持在导航栏的中心。
这就是我所做的(界面生成器):
设置以下约束:
标签 -> 标题 View :
按钮 -> 标题 View :
(标题 View 本身不受约束)
但是,标题 View 保持固定大小。如果在运行时我设置的标题比 Storyboard 中设置的占位符长,它会被修剪(“...”):
如果我设置一个较短的,标签和按钮之间会出现额外的空间:
或者,如果我添加以下约束:
标签 -> 按钮: 1.水平间距
...现在按钮完全被标签隐藏了:
我怎样才能让标题 View 水平增长(同时保持居中),以便它适合(灵活)标签和(固定)按钮,并保持它们之间的空间固定?
导航项未设置为直接处理此问题。您需要使用约束来设置标题 View 的框架,然后将其添加到 nab 项。因此,每次更改文本时,您都需要通过删除 View 、调整其大小然后再次添加它来做一些小 Action 。关键API是systemLayoutSizeFittingSize
。
关于ios - 自动布局:包含 UILabel + UIButton 的标题 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32901644/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |