注销后 UITextField 和 UIButton 无响应 swift
UITextField and UIButton unresponsive after signOut segue swift
在我的 Xcode 项目中,在退出并执行 segue 后,我的文本字段和按钮没有响应,不会显示键盘、编辑标记或允许我进行编辑。然而,我在任何地方都没有收到错误。
ViewController.swift:
override func viewDidLoad() {
super.viewDidLoad()
self.hideKeyboardWhenTappedAround()
imagePicker = UIImagePickerController()
imagePicker.allowsEditing = true
imagePicker.delegate = self
scrollView.isScrollEnabled = false
self.reset()
}
FeedVC.swift:
@objc func signOut(_ sender: AnyObject) {
KeychainWrapper.standard.removeObject(forKey: "uid")
do {
try Auth.auth().signOut()
} catch let signOutError as NSError {
print ("Error signing out: %@", signOutError)
}
performSegue(withIdentifier: "signOut", sender: nil)
}
Main.storyboard:
注销继续:
根据您选择的名称,我猜您注销后真正想做的是放松转场,基本上是返回到原始屏幕。我相信你设置它的方式,当你执行从 tableview 到原始视图的 segue 时,你实际上是在创建一个全新的视图控制器,而你真的想回到已经创建的视图。
你真正想要的是一个放松的转场,它实际上会让你回到原来的状态。这解决了其他评论者提到的问题(segues 的恶性循环)。 https://medium.com/@mimicatcodes/create-unwind-segues-in-swift-3-8793f7d23c6f
在我的 Xcode 项目中,在退出并执行 segue 后,我的文本字段和按钮没有响应,不会显示键盘、编辑标记或允许我进行编辑。然而,我在任何地方都没有收到错误。
ViewController.swift:
override func viewDidLoad() {
super.viewDidLoad()
self.hideKeyboardWhenTappedAround()
imagePicker = UIImagePickerController()
imagePicker.allowsEditing = true
imagePicker.delegate = self
scrollView.isScrollEnabled = false
self.reset()
}
FeedVC.swift:
@objc func signOut(_ sender: AnyObject) {
KeychainWrapper.standard.removeObject(forKey: "uid")
do {
try Auth.auth().signOut()
} catch let signOutError as NSError {
print ("Error signing out: %@", signOutError)
}
performSegue(withIdentifier: "signOut", sender: nil)
}
Main.storyboard:
注销继续:
根据您选择的名称,我猜您注销后真正想做的是放松转场,基本上是返回到原始屏幕。我相信你设置它的方式,当你执行从 tableview 到原始视图的 segue 时,你实际上是在创建一个全新的视图控制器,而你真的想回到已经创建的视图。
你真正想要的是一个放松的转场,它实际上会让你回到原来的状态。这解决了其他评论者提到的问题(segues 的恶性循环)。 https://medium.com/@mimicatcodes/create-unwind-segues-in-swift-3-8793f7d23c6f