2013-06-11 103 views
2

检查加载日期标签。可能是'5月2日'或'12月24日'。 enter image description hereXcode Autolayout:在恒定距离处在动态标签旁边放置标签

我想在它后面显示标签'days remaining'。由于“加载日期”的宽度是动态的,因此通过自动布局,我无法在其后放置“剩余天数”。它保持在一个固定的距离。

如何使用自动布局在xcode中进行调整?

我已经能够通过禁用自动布局通过代码来实现它。然而,随着iOS 7的推出和自动布局对于同时维护iOS 6和7来说至关重要,我认为现在是用自动布局来做到这一点的好时机。

+2

我的眼睛在流血。 – iwasrobbed

+0

@iWasRobbed :) 渐变看起来更好,相信我。 –

回答

2

确保两个标签之间的间距设置为自动,并且剩余天数标签左对齐。我建议在剩余日子的后沿和超级视图之间保持约束,但降低优先级。当标签应该远离超级视图时,它的目标是忽略它,但是当日期很长时,不要夹到或超出可见区域。

您可能还需要增加日期标签的内容拥抱优先级和/或降低剩余日期标签的抗压缩性。

通过临时设置背景颜色,您可以更好地了解您的标签正在做什么。目标是查看标签的大小,文本在标签中的位置以及空间的位置。如果标签之间有很大的差距,可以帮助您找出添加约束或调整优先级的位置。如果标签占据全部宽度,那么它将帮助您获得正确的对齐集。

+0

如何设置两个标签之间的间距? 我试着改变约束,但它们总是与超视图相关。 –

+1

“Editor> Size to Fit Content”选项最终帮助我设置了两个元素之间的空间。 http://oleb.net/blog/2013/03/things-you-need-to-know-about-cocoa-autolayout/ –

+2

很高兴你解决了它!对于间距,如果您同时选择两个标签,右下角会有一组三个图标。其中之一是插针菜单,点击它并选择水平间距。这将在两个视图之间添加一个约束。您可以在属性检查器的故事板中单击它,将宽度设置为自动。如果您将一个标签拖放到另一个标签旁边,并在“咬合”到位时释放,它会自动设置它。 – James

相关问题