【问题标题】:UIButtons don't align correctly upon first load of View ControllerUIButtons 在第一次加载 View Controller 时没有正确对齐
【发布时间】:2013-09-03 21:26:01
【问题描述】:

我在 TabBar 控制器中有一个 ViewController/View,它在 2x4 网格中有 8 个 UIButton,大小为 75x75,每个上面都设置了 75x75 背景图像。目前,我已经在 Interface Builder 的 Size Inspector 中硬编码了 XY 位置。

当我第一次加载视图时,通过单击标签栏图标,底部的两个按钮被压在它们上方的行上 - 如下图所示:

每个按钮都会触发一个 segue,该 segue 会启动另一个带有 WebView 的 ViewController:

[self performSegueWithIdentifier:@"playVimeo" sender:sender];

在那个 WebView 中,有一个后退按钮触发另一个 segue 返回缩略图页面:

[self performSegueWithIdentifier:@"returnToThumbnails" sender:sender];

当我再次按下后退按钮并返回缩略图视图时,按钮会捕捉到正确的位置,这与它们第一次加载时不同,如下图所示:

这是我的故事板的截图:

有人知道这里发生了什么吗?我迷路了……

提前致谢!

杰西

【问题讨论】:

  • 我不认为这是你的问题,但你的故事板设置是错误的。您不应该使用转场“返回”到缩略图视图(除非它是展开转场),因为您并没有真正返回 - 您正在创建缩略图视图的新实例。除了展开之外,segues 总是实例化新的控制器。
  • 嗯,好的,我明白你在说什么,但事实是视图仅在我使用 segue 时正确对齐,而不是从标签栏加载时...?! ?
  • 那么,顺便说一句,我应该如何返回 ViewController ?如果我能提供帮助,我不想嵌入这是一个导航控制器......
  • 要么使用 unwind segue,要么只在第二个控制器中使用 [self dismissViewControllerAnimated:YES completion:nil]。
  • 当我尝试输入 IBAction 方法时遇到断言失败...

标签: iphone ios uiviewcontroller uibutton uistoryboard


【解决方案1】:

当我在 UIViewControllers 的文件检查器中取消选择“使用自动布局”时,这个问题就消失了。

尽管正如 rdelmar 在 cmets 中指出的那样,它完全可以正常工作很有趣,因为我实际上是在使用我的后退按钮的每个 segue 创建一个新的 ViewController,而不是弹回到以前的现有 ViewController。它应该以两种方式工作,因为视图总是“第一次”加载......

【讨论】:

    猜你喜欢
    • 2015-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    相关资源
    最近更新 更多