IOS/Objective C:如何根据数据自定义画面
Posted
技术标签:
【中文标题】IOS/Objective C:如何根据数据自定义画面【英文标题】:IOS/Objective C: How to customize screen based on data 【发布时间】:2015-03-23 00:49:39 【问题描述】:来自网络背景的新手试图做一些在网络上很常见但在 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
如果某些数据不可用,例如传真或标题,我宁愿不留空白,而是让下一行出现在前一行的正下方。
如果没有数据填充它们,在故事板中创建的标签似乎只是留下一个空白区域。
有什么方法可以让标签在空的情况下不占用空间,或者我被故事板中的布局卡住了吗?
感谢您的任何建议。
【问题讨论】:
【参考方案1】:没有像 html/CSS 那样基于“流”的布局。有几种方法可以解决这个问题。例如:
-
使用表格视图。
使用约束并手动将空标签的高度设置为 0。
手动布置标签。
使用换行符将所有内容放在一个标签中。
最佳选择取决于您希望实际视图的外观。最简单的方法可能是#4。最灵活的方式可能是#1。但同样,这取决于您的其他要求。
【讨论】:
【参考方案2】:隐藏或空视图仍然占用空间(如您所见)。如果子视图要包含可见信息,您最好的选择可能是仅将子视图添加到您的主视图,然后在运行时重新计算布局。
视图可以由视图控制器拥有,而不必是显示的一部分。
【讨论】:
以上是关于IOS/Objective C:如何根据数据自定义画面的主要内容,如果未能解决你的问题,请参考以下文章
如何使用自定义 URL 方案 IOS Objective-c PHP
在 IOS Objective C 中,如何让单元格自动调整其子 UITableView 的内容大小
IOS / Objective-C / Storyboard:从左到右的自定义Segue在视图控制器之间创建黑条
IOS/Objective-C:UIActivityViewController:针对不同的Activity类型进行自定义
IOS/Objective-C:导航栏自定义Segue效果对比Show Segue
IOS/Objective-C:在没有 Storyboard Segue 的情况下可以在模态转换中使用自定义 Segue?