我有2个UIViewControllers,它们互相打开,当问题多次发生时我的问题就开始了,所以当用户点击关闭按钮时,那些视图控制器就有很多实例,
我没有使用Segue并使用下面的代码
Execution failed for task ':processDebugGoogleServices'.
这是显示我的问题(LINK)
的Gif文件如何管理viewcotrollers并再次停止重新打开, 任何帮助将不胜感激
答案 0 :(得分:0)
编写此代码
self.dismiss(animated: true, completion: nil)
点击“我已经拥有帐户”按钮
的事件答案 1 :(得分:0)
我创建了一个简单的演示应用程序(没有故事板,只是代码),一切都按预期工作。将以下内容与您的代码进行比较:
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
window = UIWindow()
window?.rootViewController = ViewControllerA()
window?.makeKeyAndVisible()
return true
}
}
class ViewControllerA: UIViewController {
let createNewAccountButton: UIButton = {
let button = UIButton(type: .system)
button.translatesAutoresizingMaskIntoConstraints = false
button.setTitle("Create new account", for: .normal)
button.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside)
return button
}()
@objc func buttonTapped(_ sender: UIButton) {
let viewControllerB = ViewControllerB()
present(viewControllerB, animated: true, completion: nil)
}
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .lightGray
view.addSubview(createNewAccountButton)
NSLayoutConstraint.activate([
createNewAccountButton.centerXAnchor.constraint(equalTo: view.centerXAnchor),
createNewAccountButton.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor, constant: -20)
])
}
}
class ViewControllerB: UIViewController {
let alreadyHaveAnAccountButton: UIButton = {
let button = UIButton(type: .system)
button.translatesAutoresizingMaskIntoConstraints = false
button.setTitle("I already have an account", for: .normal)
button.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside)
return button
}()
@objc func buttonTapped(_ sender: UIButton) {
dismiss(animated: true, completion: nil)
}
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .darkGray
view.addSubview(alreadyHaveAnAccountButton)
NSLayoutConstraint.activate([
alreadyHaveAnAccountButton.centerXAnchor.constraint(equalTo: view.centerXAnchor),
alreadyHaveAnAccountButton.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor, constant: -20)
])
}
}