Показать BlurEffect на ручной переход
У меня есть вопрос относительно эффектов размытия на контроллере вида. Я программирую все свои сегменты вручную по нескольким причинам. Но когда я обращаюсь к контроллеру вида с фоном эффекта размытия, я вижу только темно-серый фон. Как я могу решить это так, чтобы эффект размытия контроллера вида лежал поверх другого контроллера вида, через который можно просматривать содержимое предыдущего контроллера вида?
Эффекты размытия теперь применяются раскадровкой с прозрачными фоновыми представлениями.
Мой код для seque:
Действие:
@IBAction func ToUserSections(_ sender: Any) {
let controller =
Navigation.getDestinationViewControllerWith("User",
controllerName: "UserSectionsVC")
present(controller, animated: false, completion: nil)
}
Учебный класс:
class Navigation{
static func getDestinationViewControllerWith(_
storyboardName:String, controllerName:String)-> UIViewController{
let storyboard = UIStoryboard(name: storyboardName, bundle: nil)
let controller =
storyboard.instantiateViewController(withIdentifier:
controllerName) as UIViewController
return controller
}
}
Надеюсь, вы можете помочь мне с этим, потому что это максимизирует эстетику для приложения:D
2 ответа
Ладно, чтобы другие знали, что для меня сработало:
На IBAction: добавив следующую строку перед презентацией
controller.modalPresentationStyle = UIModalPresentationStyle.overFullScreen
Как это:
@IBAction func ToUserSections(_ sender: Any) {
let controller = Navigation.getDestinationViewControllerWith("User", controllerName: "UserSectionsVC")
controller.modalPresentationStyle = UIModalPresentationStyle.overFullScreen
present(controller, animated: false, completion: nil)
}
Попробуй это.
let viewController : CustomViewControlller = UIStoryboard.getMainStoryboard().instantiateViewController(withIdentifier: "Identifier") as! CustomViewControlller
viewController.modalPresentationStyle = .overCurrentContext
viewController.modalTransitionStyle = .crossDissolve
self.present(viewController, animated: true, completion: { _ in })