视图的奇怪行为

Posted

技术标签:

【中文标题】视图的奇怪行为【英文标题】:Strange behaviour of Views 【发布时间】:2019-01-10 01:30:19 【问题描述】:

我正在为 Swift 4 中的 IO 设计一个应用程序。 首先出现一个登录视图,如果您按下登录按钮,将执行以下代码:

    let storyBoard : UIStoryboard = UIStoryboard(name: "TabBar", bundle:nil)
    let resultViewController = storyBoard.instantiateViewController(withIdentifier: "TabBar") as! UITabBarController
    resultViewController.modalTransitionStyle = .partialCurl
    self.present(resultViewController, animated:true, completion:nil)

如果我们转到 any 视图,例如 您将看到一个包含 3 个部分的表格视图,内容是静态的。当您按下时(不介意它是否是该部分标题的单元格),它会返回登录页面。当您点击屏幕的 2/3 第一个区域(或多或少的 2 个第一部分)时,在 TabBar 链接的所有页面中都会发生这种情况。 它似乎正在执行:

dismiss(animated: true, completion: nil)

为什么会有这种行为?我该如何解决?

【问题讨论】:

删除“resultViewController.modalTransitionStyle = .partialCurl”后的行为相同 如果我删除该行,该行为就会消失。好像是这个问题。但为什么呢? 如果我将 .partialCurl 更改为 .coverVertical(例如),它会完美运行。 【参考方案1】:

这似乎是一个错误或预期的行为。用户在 ios 7 中已经报告了它。 在我看来,苹果默认动画只是查看内容而不与它们交互。

Here 是一个讨论相同问题的答案。

我建议你做一个自定义逻辑。

【讨论】:

我使用的是 iOS 11.4 并且发生了同样的情况。谢谢你,反正我会改动画的,一点都不重要。

以上是关于视图的奇怪行为的主要内容,如果未能解决你的问题,请参考以下文章

Django 视图代码有奇怪的行为

UIViewController 的视图奇怪的调整大小行为

UIPickerView 自定义视图奇怪的行为

子类化 UIScrollView 时的奇怪行为

约束的奇怪行为,iOS8

iPhone 6 plus 上堆栈视图的奇怪行为