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 的官方文件。

Swift 彈出式視窗 (UIAlertController) 教學

Q&A (常見問題解答)

1. 如何在 UIAlertController 中添加多個輸入框?

您可以使用 addTextField 方法多次添加輸入框,然後分別獲取每個輸入框的內容。

2. UIAlertController 可以用於哪些場景?

一般用於提示使用者重要信息、確認操作、或收集使用者輸入的數據。

3. Swift 中的 UIAlertController 和其他語言的彈出視窗有何不同?

Swift 的 UIAlertController 提供了更優雅的 API,讓開發者可以輕鬆控制彈出視窗的樣式和行為。

Categorized in:

Tagged in:

,