Delegateのエラー
Swift初心者です。
Xcodeでポップアップを表示する機能を付けたいと思っているのですが、検索して出てきたサイトにあったコードをコピペしたところ、
let vc = storyboard.instantiateViewController(withIdentifier: "popoverVC") as! PopoverViewController
vc.delegate = self
の部分で、
Value of type 'PopoverViewController' has no member 'delegate'
といったエラーが出てしまいました。
サイトにあった手順は全て踏んだのですが、これはどこがおかしいのでしょうか...。
教えていただければ幸いです。
該当するソースコード
override func prepare (for segue: UIStoryboardSegue, sender: Any?) {
let storyboard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
// "popoverVC"はポップアップ用のVCに後ほど設定
let vc = storyboard.instantiateViewController(withIdentifier: "popoverVC") as! PopoverViewController
vc.delegate = self
vc.modalPresentationStyle = UIModalPresentationStyle.popover
let popover: UIPopoverPresentationController = vc.popoverPresentationController!
popover.delegate = self
if sender != nil {
if let button = sender {
// UIButtonからポップアップが出るように設定
popover.sourceRect = (button as! UIButton).bounds
popover.sourceView = (sender as! UIView)
}
}
self.present(vc, animated: true, completion:nil)
}
// 表示スタイルの設定
func adaptivePresentationStyle(for controller: UIPresentationController, traitCollection: UITraitCollection) -> UIModalPresentationStyle {
// .noneを設定することで、設定したサイズでポップアップされる
return .none
}
0 likes