はじめに
たぶん普通の事なんだと思いますが、初心者すぎて悩んだので記録しておきます。
実装
ボタンでアラートを表示して、アプリがバックグラウンドになったらアラートを閉じます。
import UIKit
class ViewController: UIViewController {
private var alert: UIAlertController!
override func viewDidLoad() {
super.viewDidLoad()
// バックグラウンド監視
NotificationCenter.default.addObserver(
self,
selector: #selector(background),
name: UIApplication.willEnterForegroundNotification,
object: nil
)
}
// アラートを表示する
@IBAction private func alertButtonTapped(_ sender: Any) {
alert = UIAlertController(title: "タイトル", message: "メッセージ", preferredStyle: .alert)
let button = UIAlertAction(title: "OK", style: .default)
alert.addAction(button)
self.present(alert, animated: true)
}
// アラートを閉じる
@objc private func background() {
alert.dismiss(animated: true)
}
}
おわり
最初に定義しておくなんて技思いつきません