【发布时间】:2015-05-05 19:02:26
【问题描述】:
这已经困扰了我一段时间了。我在UITabBarController 中有一个UISplitViewController。主视图是一个 TableView。当我单击一个单元格时,我会调出一个非常基本的视图控制器,其中只有一个 UIButton 居中。这是视图控制器的代码:
class TestViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
@IBOutlet weak var button: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func buttonPressed(sender: AnyObject) {
let pickerC = UIImagePickerController()
pickerC.delegate = self
pickerC.modalPresentationStyle = .Popover
pickerC.popoverPresentationController?.sourceView = button as UIView
pickerC.popoverPresentationController?.sourceRect = (button as UIView).bounds
pickerC.popoverPresentationController?.permittedArrowDirections = UIPopoverArrowDirection.Any
self.presentViewController(pickerC, animated: true, completion: nil)//4
}
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
self.dismissViewControllerAnimated(true, completion: nil)
}
func imagePickerControllerDidCancel(picker: UIImagePickerController) {
self.dismissViewControllerAnimated(true, completion: nil)
}
}
如果我单击取消或选择和图像,选择器控制器会正确关闭。当我单击返回按钮返回 TableView 时,问题来了,我收到:
Unbalanced calls to begin/end appearance transitions for <TestViewController: 0x7fb882a72380>.
TestViewController 非常基础,为什么会这样呢?
【问题讨论】:
-
当你回到
tableView时,也许tableView又试图展示这个vc了?
标签: ios swift uiviewcontroller uiimagepickercontroller