Swift 彈出式視窗 (UIAlertController) 完整教學 – 2025 最新語法與最佳實踐
Swift 是一種新興的程式語言,讓開發者能夠快速開發 iOS 應用程式。在 Swift 中,開發者可以使用 UIAlertController
來創建彈出式視窗,讓使用者與應用程式進行互動。本文將詳細介紹如何使用 Swift 來創建和自定義 UIAlertController
,並提供最佳實踐與實作範例。
創建 UIAlertController
要創建一個 UIAlertController
,首先需要初始化一個 UIAlertController
物件,並指定標題和訊息。以下是如何創建一個基本的彈出式視窗:
let alertController = UIAlertController(title: "標題", message: "這是一個彈出式視窗", preferredStyle: .alert)
添加按鈕與行為
接下來,可以使用 addAction
方法來添加按鈕。這裡我們將添加一個「確定」按鈕,並設置其行為:
let okAction = UIAlertAction(title: "OK", style: .default) { action in
print("OK 按鈕被點擊")
}
alertController.addAction(okAction)
如果需要添加一個「取消」按鈕,可以這樣做:
let cancelAction = UIAlertAction(title: "Cancel", style: .cancel) { action in
print("Cancel 按鈕被點擊")
}
alertController.addAction(cancelAction)
顯示 UIAlertController
最後,使用 present
方法來顯示 UIAlertController
:
self.present(alertController, animated: true, completion: nil)
錯誤排除
在使用 UIAlertController
時,可能會遇到以下常見錯誤:
- 錯誤:未正確初始化 UIAlertController – 確保標題和訊息都已正確設置。
- 錯誤:無法顯示彈出視窗 – 確保在主執行緒上呼叫
present
方法。
延伸應用
除了基本的彈出式視窗,UIAlertController
還可以用於顯示輸入框,讓使用者輸入文字。以下是如何添加一個輸入框:
alertController.addTextField { textField in
textField.placeholder = "請輸入您的名字"
}
這樣,您可以獲取使用者輸入的值:
let name = alertController.textFields![0].text
print("使用者輸入的名字是:\(name ?? "")")
結論
本文介紹了如何使用 Swift 創建和自定義 UIAlertController
,以及最佳實踐和常見錯誤排除。UIAlertController
是一個強大的工具,可以讓開發者輕鬆創建彈出式視窗,提升使用者體驗。如果你想進一步了解 Swift 的 UIAlertController
,建議參考 Apple 的官方文件。
Q&A (常見問題解答)
1. 如何在 UIAlertController 中添加多個輸入框?
您可以使用 addTextField
方法多次添加輸入框,然後分別獲取每個輸入框的內容。
2. UIAlertController 可以用於哪些場景?
一般用於提示使用者重要信息、確認操作、或收集使用者輸入的數據。
3. Swift 中的 UIAlertController 和其他語言的彈出視窗有何不同?
Swift 的 UIAlertController
提供了更優雅的 API,讓開發者可以輕鬆控制彈出視窗的樣式和行為。
—