當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Swift Never alert(_:isPresented:actions:)用法及代碼示例


用法一

實例方法

alert(_:isPresented:actions:)

當給定條件為真時顯示警報,使用標題的文本視圖。

聲明

func alert<A>(
    _ title: Text,
    isPresented: Binding<Bool>,
    actions: () -> A
) -> some View where A : View

參數

title

警報的標題。

isPresented

與確定是否顯示警報的布爾值的綁定。當用戶按下或點擊警報的其中一項操作時,係統將此值設置為false 並關閉。

actions

A ViewBuilder 返回警報的操作。

詳述

在下麵的示例中,按鈕根據綁定的布爾變量的值有條件地顯示警報。當布爾值設置為 true 時,係統會顯示帶有 “OK” 操作的警報。


struct LoginView: View {
    @Binding var didFail: Bool
    var body: some View {
        LoginForm(didFail: $didFail)
            .alert(
                Text("An error occurred."), isPresented: $didFail
            ) {
                Button("OK") {
                    // Handle acknowledgement.
                }
            }
    }
}

警報中的所有操作都會在操作運行後解除警報。默認按鈕顯示得更加突出。您可以通過為其分配KeyboardShortcut/defaultAction 鍵盤快捷鍵來影響默認按鈕。

係統可以根據它們的作用和突出度對按鈕重新排序。

如果不存在任何操作,係統將包含標準的“OK” 操作。沒有提供默認的取消操作。如果要顯示取消操作,請使用角色為 ButtonRole/cancel 的按鈕。

在 iOS、tvOS 和 watchOS 上,警報僅支持標簽為 Text 的控件。傳遞任何其他類型的視圖會導致內容被省略。

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+, tvOS 15.0+, watchOS 8.0+

用法二

實例方法

alert(_:isPresented:actions:)

當給定條件為真時顯示警報,使用字符串變量作為標題。

聲明

func alert<S, A>(
    _ title: S,
    isPresented: Binding<Bool>,
    actions: () -> A
) -> some View where S : StringProtocol, A : View

參數

title

用作警報標題的文本字符串。

isPresented

與確定是否顯示警報的布爾值的綁定。當用戶按下或點擊警報的其中一項操作時,係統將此值設置為false 並關閉。

actions

A ViewBuilder 返回警報的操作。

詳述

在下麵的示例中,按鈕根據綁定的布爾變量的值有條件地顯示警報。當布爾值設置為 true 時,係統會顯示帶有 “OK” 操作的警報。


struct LoginView: View {
    @Binding var didFail: Bool
    var title: String
    var body: some View {
        LoginForm(didFail: $didFail)
            .alert(title, isPresented: $didFail) {
                Button("OK") {
                    // Handle acknowledgement.
                }
            }
    }
}

警報中的所有操作都會在操作運行後解除警報。默認按鈕顯示得更加突出。您可以通過為其分配KeyboardShortcut/defaultAction 鍵盤快捷鍵來影響默認按鈕。

係統可以根據它們的作用和突出度對按鈕重新排序。

如果不存在任何操作,係統將包含標準的“OK” 操作。沒有提供默認的取消操作。如果要顯示取消操作,請使用角色為 ButtonRole/cancel 的按鈕。

在 iOS、tvOS 和 watchOS 上,警報僅支持標簽為 Text 的控件。傳遞任何其他類型的視圖會導致內容被省略。

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+, tvOS 15.0+, watchOS 8.0+

用法三

實例方法

alert(_:isPresented:actions:)

當給定條件為真時顯示警報,使用標題的本地化字符串鍵。

聲明

func alert<A>(
    _ titleKey: LocalizedStringKey,
    isPresented: Binding<Bool>,
    actions: () -> A
) -> some View where A : View

參數

titleKey

說明警報標題的本地化字符串的鍵。

isPresented

與確定是否顯示警報的布爾值的綁定。當用戶按下或點擊警報的其中一項操作時,係統將此值設置為false 並關閉。

actions

A ViewBuilder 返回警報的操作。

詳述

在下麵的示例中,按鈕根據綁定的布爾變量的值有條件地顯示警報。當布爾值設置為 true 時,係統會顯示帶有 “OK” 操作的警報。


struct LoginView: View {
    @Binding var didFail: Bool
    var body: some View {
        LoginForm(didFail: $didFail)
            .alert("An error occurred.", isPresented: $didFail) {
                Button("OK") {
                    // Handle acknowledgement.
                }
            }
    }
}

警報中的所有操作都會在操作運行後解除警報。默認按鈕顯示得更加突出。您可以通過為其分配KeyboardShortcut/defaultAction 鍵盤快捷鍵來影響默認按鈕。

係統可以根據它們的作用和突出度對按鈕重新排序。

如果不存在任何操作,係統將包含標準的“OK” 操作。沒有提供默認的取消操作。如果要顯示取消操作,請使用角色為 ButtonRole/cancel 的按鈕。

在 iOS、tvOS 和 watchOS 上,警報僅支持標簽為 Text 的控件。傳遞任何其他類型的視圖會導致內容被省略。

此修飾符代表您為標題創建 Text 視圖,並將本地化鍵視為類似於 Text/init(_:tableName:bundle:comment:) 。有關本地化字符串的更多信息,請參閱Text

可用版本

iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+, tvOS 15.0+, watchOS 8.0+

相關用法


注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Never alert(_:isPresented:actions:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。