📜  'UIViewController' 类型的表达式?在 swift 3.0 中弹出视图控制器时未使用警告 - Swift (1)

📅  最后修改于: 2023-12-03 15:29:06.653000             🧑  作者: Mango

弹出视图控制器时未使用警告

在 swift 3.0 中,弹出视图控制器时,如果未使用该控制器的实例来弹出它,则会生成一个未使用警告。例如:

let viewController = UIViewController()
present(viewController, animated: true, completion: nil)

以上代码中,我们创建了一个新的UIViewController实例viewController,然后使用present方法弹出它。但由于我们没有使用它的实例来弹出它,因此Swift会生成一个未使用警告。

为了解决这个问题,我们可以使用下划线(_)来忽略未使用的返回值:

let viewController = UIViewController()
_ = present(viewController, animated: true, completion: nil)

或者我们可以使用强制解包来执行弹出操作:

let viewController = UIViewController()
present(viewController, animated: true, completion: nil)!

以上两种方法都会使警告消失,但它们并不是最佳实践。最好的方法是使用viewController的实例来弹出它:

let viewController = UIViewController()
self.present(viewController, animated: true, completion: nil)

这种方法可以使警告消失,并且还清晰地表明了我们要使用viewController实例来弹出它。

综上所述,为了避免“弹出视图控制器时未使用”的警告,我们应该始终使用控制器的实例来执行弹出操作。