【问题标题】:TextField disappearing when tapped点击时TextField消失
【发布时间】:2016-02-09 05:05:05
【问题描述】:

使用Xcode 7.2.1,我设置了一些textFields。某些时候,当我在视图控制器中时,当点击 textField 时,所有 subviews 都会从 self.view 中消失。

所有约束都得到满足,我什至尝试将它们固定在许多令人满意的组合中,结果相同。

发生这种情况后,当我查看视图调试器时,self.view 中的所有 subviews 都找不到。

我很困惑为什么会这样。

【问题讨论】:

  • 您能否编辑问题并提供您的 viewController 的完整源代码?这样我们就可以发现是否有任何逻辑错误
  • @HitendraHckr 感谢您提供帮助,但是我能够通过提供的答案弄清楚

标签: ios xcode swift autolayout xcode-storyboard


【解决方案1】:

当我在显示(有问题的)视图控制器的注销视图控制器中调用 popToRootViewController() 时,必须处理该问题。

在segue之前弹出时,所有视图在被segue的视图控制器中消失:

  @IBAction func onLogoutTapped(sender: AnyObject) {
    backendless.userService.logout({ (object) -> Void in
      self.navigationController?.popToRootViewControllerAnimated(false)
      self.performSegueWithIdentifier("profileToLoginSegue", sender: self)
      }) { (fault) -> Void in
      print("Server reported an error: \(fault)")
    }
  }

但是,当我在闭包中调用 popToRootViewController() 时,模态呈现的(以前有问题的)视图控制器正常运行:

  @IBAction func onLogoutTapped(sender: AnyObject) {
    backendless.userService.logout({ (object) -> Void in
      self.performSegueWithIdentifier("profileToLoginSegue", sender: self)
        self.navigationController?.popToRootViewControllerAnimated(true)
      }) { (fault) -> Void in
      print("Server reported an error: \(fault)")
    }
  }

我不确定这是为什么,但肯定是问题所在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-23
    相关资源
    最近更新 更多