【问题标题】:Swift UIView autolayout and constraintsSwift UIView 自动布局和约束
【发布时间】:2019-08-01 05:54:48
【问题描述】:

我的场景,我在键盘顶部创建了工具栏视图。我在 ViewController 顶部添加了 UIView 拖放,如下图所示

在这里,iPhone X 我可以看到完美的尺寸宽度,但如果我运行其他设备,宽度会发生变化。所以工具栏视图显示宽度的一半,而不是显示完美的宽度。如何为此设置自动布局和约束。如何解决这个问题?

【问题讨论】:

  • 如果您可以拖放添加它,您也可以将其固定在故事板中
  • 怎么做?抱歉,我找不到你@Lu_
  • 向我们展示您在 Interface Builder 中应用于 Tool Bar 的约束
  • 你以前用过情节提要吗?您可以搜索故事板约束的堆栈溢出
  • 你没有显示任何代码,没有来自可视化调试器的截图,这样的问题很难理解

标签: ios swift


【解决方案1】:

我和你一样添加了视图

有约束

将此视图添加为inputAccessoryView

myTextField.inputAccessoryView = viewAccessory

而且工作正常


编辑 - 工具栏作为 InputAccesory

您可以使用工具栏来实现这一点(没有任何约束头痛)。检查以下步骤。

选择如下工具栏并添加此工具栏作为您的视图。

现在通过拖放UIBarButtonItem 添加如上图所示的按钮,并为每个BarButton 分配图像。要使其宽度灵活且分布均匀,只需添加Flexible Space Bar Button Item

现在您的工具栏层次结构应该如下所示

在你的代码中

@IBOutlet var toolBarAccessory: UIToolbar!
@IBOutlet weak var myTextField: UITextField!

override func viewDidLoad() {
    super.viewDidLoad()
    myTextField.delegate = self
    myTextField.inputAccessoryView = toolBarAccessory

}

输出:

【讨论】:

  • 哇。这是我的预期。我也有这样的情况,但无论如何我都没有工作我是仔细检查,我将添加我的约束屏幕。谢谢人
  • 请检查上面更新了我的问题。仍然无法正常工作。如果我做错了什么,请告诉我。
  • @BenDev 检查更新的答案。你不需要任何单一的约束。如果你想尝试新的更新,那就去吧。
猜你喜欢
  • 2021-01-14
  • 2017-12-24
  • 2013-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-05
相关资源
最近更新 更多