iPad如何在一行中设置两个文本框?

Posted

技术标签:

【中文标题】iPad如何在一行中设置两个文本框?【英文标题】:How can I set two textboxes in one line for iPad? 【发布时间】:2017-06-15 16:39:10 【问题描述】:

我使用 xCode 8.1。 我在 iPhone 的一列中有两个文本框(纵向模式):

如何使用自适应设计在 iPad 和 iPhone 的横向模式下将这些文本框显示为一行?

【问题讨论】:

你试过尺寸等级吗?看看这个:makeapppie.com/2016/09/05/… 【参考方案1】:

按照纵向显示的方式放置文本框

假设你想让Name留在原地,你只需要改变Surname上的约束

您应该为Surname 定义一个TopSpace 和一个Leading Space - 依次选择每个约束,然后单击Installed 旁边的+ 按钮- 这为您提供了引入变化的选项,因此请单击@987654330 @ 然后de-选择初始默认值。

这意味着这两个限制仅适用于纵向模式的 iPhone(Compact/Regular

切换到横向模式,并将Surname 定位在您需要的位置。应用约束 - 使用 Name 和前导间距的垂直中心。选择这两个约束,然后重复创建变体的过程,但现在它们将只为 iPhone 横向创建(紧凑/紧凑)。

现在切换到 iPad,并重复您对横向执行的过程,这将创建 iPad 约束(常规/常规)

这应该是你需要的一切。如果它不起作用,或者您在情节提要中看到红线,则很可能意味着您已为 所有 方向保留了活动的 Surname 约束之一 - 同时具有冲突的约束具体细节 - 如果找不到哪个,请删除约束并重新开始:-)

这是一个屏幕截图,显示了您添加变体的位置

这是添加特定于纵向的约束后的样子

【讨论】:

感谢您的帮助,罗素【参考方案2】:

在 Xcode 8 中执行此操作的关键是编辑器右下方的 Vary For Traits 按钮。

View as 列表中选择一个 iPad,然后像对 iPad 一样设置约束。

然后选择一部 iPhone,点击Vary For Traits,然后选择width

现在,选择 iPhone 上未使用的任何约束,然后点击删除。这不会完全删除它们,它只是卸载它们针对该尺寸等级

然后添加 iPhone 所需的约束。这只会增加紧凑宽度尺寸类的约束

完成后,点击Done Varying

等等……

[[

【讨论】:

【参考方案3】:

另一种方法是使用具有不同特征的堆栈视图。 选择 Interface builder 中的两个字段,然后在右下角按 Stack 按钮。

然后选择堆栈视图并打开属性检查器选项卡。

添加基于宽度的变体,并为此变体(常规宽度)将轴设置为水平。

完成。

注意:如果您的部署目标低于 ios 9,请不要使用堆栈视图。

【讨论】:

好主意!

以上是关于iPad如何在一行中设置两个文本框?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 RDLC 的文本框中设置上标

如何在来自数据库的文本框中设置逗号分隔值?

如何在数据库中包含引号的文本框中设置值?

如何在 netty4 中设置 Web 套接字客户端未屏蔽模式文本框

如何在默认情况下停止 datetimepicker 在文本框中设置今天的日期 onclick

如何在html网页中设置文本框为必填?