ios – 解雇UIImagePickerController也会解散呈现视图控制器

ios – 解雇UIImagePickerController也会解散呈现视图控制器,第1张

概述我正在开发一个使用tabbar系统的项目. tabbar项之一是JobPostingViewController.我将它嵌入UINavigationController中.在这个视图控制器中有一个名为add new job的UIButton.我实现了pushviewcontroller去CreateJobPostViewController.在那里我需要添加UI ImagePickerContro 我正在开发一个使用tabbar系统的项目. tabbar项之一是JobPostingVIEwController.我将它嵌入UINavigationController中.在这个视图控制器中有一个名为add new job的UIbutton.我实现了pushvIEwcontroller去CreateJobPostVIEwController.在那里我需要添加UI ImagePickerController来选择图像.当我点击完成按钮或从库中选择一个图像时,它会关闭到JobPostingVIEwController.但它应该去CreateJobPostVIEwController.
任何人请帮助我.提前致谢.

你可以在这里看到问题:

JobPostingVIEwController中的代码

@IBAction func openCreateJob(sender: AnyObject) {    let vc = self.storyboard?.instantiateVIEwControllerWithIDentifIEr("CreateJobPostVIEwController") as! CreateJobPostVIEwController    self.navigationController?.pushVIEwController(vc,animated: true)}

CreateJobPostVIEwController中的代码

@IBAction func addImages(sender: AnyObject) {    imagePicker.allowsEditing = false    imagePicker.sourceType = .Photolibrary    presentVIEwController(imagePicker,animated: true,completion: nil)}func imagePickerController(picker: UIImagePickerController,dIDFinishPickingMediawithInfo info: [String : AnyObject]) {    picker.dismissVIEwControllerAnimated(true,completion: nil)}func imagePickerControllerDIDCancel(picker: UIImagePickerController) {    picker.dismissVIEwControllerAnimated(true,completion: nil)}
解决方法@H_419_17@ 将Picker添加为子视图

尝试将imagepicker作为子视图添加到您的CreateJobPostVIEwController中,然后将其从代理中的父项中删除

@IBAction func openCreateJob(sender: AnyObject) {var picker: UIImagePickerController = UIImagePickerController()picker.delegate = selfpicker.allowsEditing = falsepicker.sourceType = .Photolibraryself.addChildVIEwController(picker)picker.dIDMovetoParentVIEwController(self)self.vIEw!.addSubvIEw(picker.vIEw!)}

然后

func imagePickerControllerDIDCancel(picker: UIImagePickerController) {    picker.vIEw!.removeFromSupervIEw()    picker.removeFromParentVIEwController()    }

用于呈现

通过currentcontext显示选择器,例如编辑取消选择,

在演示之前使用picker.modalPresentationStyle = .overCurrentContext //

presentVIEwController(picker,completion: nil)
总结

以上是内存溢出为你收集整理的ios – 解雇UIImagePickerController也会解散呈现视图控制器全部内容,希望文章能够帮你解决ios – 解雇UIImagePickerController也会解散呈现视图控制器所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1103604.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存