テキストフィールド付きのアラート表示方法です
通常のアラート表示は以下記事参照↓
完成形はこれ
ボタンを押したらアラートが表示され、テキストを入力したら、文字がボタンに表示されます
Main.storyboardの編集
Buttonを1つ配置するだけ
ViewController.swiftの編集
ストーリーボードに配置したボタンをViewControllerにひも付けして、こんな感じでコードを書いてビルドしたら完成(´∀`)
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var testButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
//ボタン押したときの動作
@IBAction func testButton(_ sender: Any) {
let alert = UIAlertController(title: "予定を入力", message: "", preferredStyle: .alert)
//OKアクションは以下
let okAction = UIAlertAction(title: "決定", style: .default) { action in
//テキストフィールド表示
guard let tiTle = alert.textFields?.first?.text else { return }
print(tiTle)
//ボタンの名称を変更させたいので以下記載
self.testButton.setTitle("\(tiTle)", for: .normal)
}
//NGアクションは以下
let cancelAction = UIAlertAction(title: "キャンセル", style: .cancel, handler: nil)
alert.addAction(okAction)
alert.addAction(cancelAction)
//テキストフィールドに予め表示させる文字
alert.addTextField {
$0.placeholder = "ここに予定を入力してください"
}
present(alert, animated: true, completion: nil)
}
}
コメント