IOS / Objective C:如何根据数据自定义屏幕

时间:2015-03-23 00:49:40

标签: ios objective-c storyboard uilabel

来自网络背景的Newb尝试做一些在网络上很常见但在iPhone上可能无法做到的事情。

我正在尝试为看起来大致像名片的联系人创建一个屏幕:

John Doe
Vice President
Acme Insurance
222 Main Street
International Plaza
Anytown USA 22333
Tel: 555 555 5555
Fax: 555 555 5555
email: john.doe@acmeco.com

如果某些数据不可用,例如传真或标题,我建议不要留空格,而是将下一行显示在上一行的下方。

如果没有数据填充,故事板中创建的标签似乎只留下一个空格。

有没有办法让标签在没空的情况下占用空间,或者我在故事板中遇到布局?

感谢您的任何建议。

2 个答案:

答案 0 :(得分:2)

没有'流动'基于HTML / CSS的布局。有几种方法可以解决这个问题。例如:

  1. 使用表格视图。
  2. 使用约束并手动将空标签的高度设置为0.
  3. 手动布置标签。
  4. 使用换行符将所有内容放在一个标签中。
  5. 什么是最好的取决于您希望实际视图的外观。最简单的方法可能是#4。最灵活的方式可能是#1。但同样,它取决于您的其他要求。

答案 1 :(得分:1)

隐藏或空视图仍占用空间(正如您所发现的那样)。您最好的选择可能是只在子视图中添加子视图,如果它们包含可见信息,然后在运行时重新计算布局。

视图可以由视图控制器拥有,而不必是显示的一部分。