如何创建弹出视图?
Posted
技术标签:
【中文标题】如何创建弹出视图?【英文标题】:How to create a popup view? 【发布时间】:2011-07-05 12:21:21 【问题描述】:如何在 xcode 4 中以编程方式创建弹出视图? 我正在尝试创建一个弹出视图,其中包含一个 webview 我在视图中添加了一个后退按钮。我想转到按下后退按钮时调用它的上一个视图。 我该怎么做??
【问题讨论】:
你问的是弹出视图吗? iPhone 上没有弹出视图。如果您想制作模态视图,请阅读 Apple 的模态视图指南。 developer.apple.com/library/ios/#featuredarticles/… 为什么不自己构建呢? 【参考方案1】:使用它并根据需要自定义它们
https://github.com/sonsongithub/PopupView
【讨论】:
【参考方案2】:步骤:1 - 在 storyboard 中创建新的 VC,在 VC 中创建新的 UIView。将其命名为 (ViewPopupUI),然后在 ViewPopupUI 中声明所需的字段和属性。
步骤:2 - VC 内部
@IBOutlet private weak var viewPopupUI:UIView!
@IBOutlet var btnClose: UIButton!
override func viewDidLoad()
super.viewDidLoad()
self.showViewWithAnimation()
@IBAction func btnCloseAction(_ sender: Any)
self.hideViewWithAnimation()
//MARK: - Animation Method
private func showViewWithAnimation()
self.view.alpha = 0
self.viewPopupUI.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
UIView.animate(withDuration: 0.3)
self.viewPopupUI.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
self.view.alpha = 1
private func hideViewWithAnimation()
UIView.animate(withDuration: 0.3, animations:
self.viewPopupUI.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
self.view.alpha = 0
, completion:
(value: Bool) in
self.removeFromParent()
self.view.removeFromSuperview()
)
来电弹窗
let popupVC = storyboard?.instantiateViewController(withIdentifier: "SchoolEventGoingPopup_VC") as! SchoolEventGoingPopup_VC
popupVC.strId = self.dictEventDetails?.object(forKey: "id") as? Int
view.addSubview(popupVC.view)
addChildViewController(popupVC)
【讨论】:
以上是关于如何创建弹出视图?的主要内容,如果未能解决你的问题,请参考以下文章
如何创建一个动态弹出并扩展其超级视图大小的子视图。 (在代码中)
如何在 iPhone 中使用 UIBezierPath 创建像 UIPopover 这样的视图?