我有一个scrollView,当我显示键盘时,我想向上滚动.
2014-09-29 14:48:50.738 swrd [1563:472888] – [swrd.EditPhotoViewController keyboardWasShown]:无法识别的选择器发送到实例0x14ed36640
这是我的代码,怎么了?
func registerForKeyboardNotifications ()-> Void { NSNotificationCenter.defaultCenter().addObserver(self,selector: "keyboardWasShown",name: UIKeyboardDidShowNotification,object: nil) NSNotificationCenter.defaultCenter().addObserver(self,selector: "keyboardWillBeHidden",name: UIKeyboardWillHideNotification,object: nil) } func deregisterFromKeyboardNotifications () -> Void { let center: NSNotificationCenter = NSNotificationCenter.defaultCenter() center.removeObserver(self,name: UIKeyboardDidHideNotification,object: nil) center.removeObserver(self,object: nil) } func keyboardWasShown (notification: NSNotification) { let info : NSDictionary = notification.userInfo! let keyboardSize = info.objectForKey(UIKeyboardFrameBeginUserInfoKey)?.frame let insets: UIEdgeInsets = UIEdgeInsetsMake(self.scrollView.contentInset.top,keyboardSize!.height,0) self.scrollView.contentInset = insets self.scrollView.scrollIndicatorInsets = insets self.scrollView.contentOffset = CGPointMake(self.scrollView.contentOffset.x,self.scrollView.contentOffset.y + keyboardSize!.height) } func keyboardWillBeHidden (notification: NSNotification) { let info : NSDictionary = notification.userInfo! let keyboardSize = info.objectForKey(UIKeyboardFrameBeginUserInfoKey)?.frame let insets: UIEdgeInsets = UIEdgeInsetsMake(self.scrollView.contentInset.top,0) self.scrollView.contentInset = insets self.scrollView.scrollIndicatorInsets = insets } override func viewWillAppear(animated: Bool) { super.viewWillAppear(true) self.registerForKeyboardNotifications() } override func viewWillDisappear(animated: Bool) { super.viewWillDisappear(true) self.deregisterFromKeyboardNotifications() }