用法一
confirmationDialog(_:isPresented:titleVisibility:actions:message:)
聲明
func confirmationDialog<A, M>(
_ title: Text,
isPresented: Binding<Bool>,
titleVisibility: Visibility = .automatic,
actions: () -> A,
message: () -> M
) -> some View where A : View, M : View
參數
title
對話框的標題。
isPresented
與確定是否顯示對話框的布爾值的綁定。當用戶按下或點擊對話框的默認操作按鈕時,係統將此值設置為
false
,關閉對話框。titleVisibility
對話框標題的可見性。默認值為
Visibility/automatic
。actions
返回對話框操作的視圖構建器。
message
返回對話框消息的視圖構建器。
詳述
在下麵的示例中,按鈕根據綁定的布爾變量的值有條件地顯示確認對話框。當布爾值設置為 true
時,係統會顯示一個確認對話框,其中包含取消操作和破壞性操作。
struct ConfirmEraseItems: View {
@State private var isShowingDialog = false
var body: some View {
Button("Empty Trash") {
isShowingDialog = true
}
.confirmationDialog(
Text("Permanently erase the items in the trash?"),
isPresented: $isShowingDialog
) {
Button("Empty Trash", role: .destructive) {
// Handle empty trash action.
}
} message: {
Text("You cannot undo this action.")
}
}
}
確認對話框中的所有操作將在操作運行後關閉對話框。默認按鈕將顯示得更加突出。您可以通過為其分配KeyboardShortcut/defaultAction
鍵盤快捷鍵來影響默認按鈕。
係統可以根據它們的作用和突出度對按鈕重新排序。
默認情況下,對話框包含標準的關閉操作。如果您提供一個角色為 ButtonRole/cancel
的按鈕,則該按鈕將代替默認的關閉操作。您不必使用取消按鈕的操作來關閉演示文稿。
可用版本
用法二
confirmationDialog(_:isPresented:titleVisibility:actions:message:)
聲明
func confirmationDialog<S, A, M>(
_ title: S,
isPresented: Binding<Bool>,
titleVisibility: Visibility = .automatic,
actions: () -> A,
message: () -> M
) -> some View where S : StringProtocol, A : View, M : View
參數
title
用作對話框標題的文本字符串。
isPresented
與確定是否顯示對話框的布爾值的綁定。當用戶按下或點擊對話框的默認操作按鈕時,係統將此值設置為
false
,關閉對話框。titleVisibility
對話框標題的可見性。默認值為
Visibility/automatic
。actions
返回對話框操作的視圖構建器。
message
返回對話框消息的視圖構建器。
詳述
在下麵的示例中,按鈕根據綁定的布爾變量的值有條件地顯示確認對話框。當布爾值設置為 true
時,係統會顯示一個確認對話框,其中包含取消操作和破壞性操作。
struct ConfirmEraseItems: View {
@State private var isShowingDialog = false
var title: String
var body: some View {
Button("Empty Trash") {
isShowingDialog = true
}
.confirmationDialog(
title,
isPresented: $isShowingDialog
) {
Button("Empty Trash", role: .destructive) {
// Handle empty trash action.
}
Button("Cancel", role: .cancel) {
isShowingDialog = false
}
} message: {
Text("You cannot undo this action.")
}
}
}
確認對話框中的所有操作將在操作運行後關閉對話框。默認按鈕將顯示得更加突出。您可以通過為其分配KeyboardShortcut/defaultAction
鍵盤快捷鍵來影響默認按鈕。
係統可以根據它們的作用和突出度對按鈕重新排序。
默認情況下,對話框包含標準的關閉操作。如果您提供一個角色為 ButtonRole/cancel
的按鈕,則該按鈕將代替默認的關閉操作。您不必使用取消按鈕的操作來關閉演示文稿。
可用版本
用法三
confirmationDialog(_:isPresented:titleVisibility:actions:message:)
聲明
func confirmationDialog<A, M>(
_ titleKey: LocalizedStringKey,
isPresented: Binding<Bool>,
titleVisibility: Visibility = .automatic,
actions: () -> A,
message: () -> M
) -> some View where A : View, M : View
參數
titleKey
說明對話框標題的本地化字符串的鍵。
isPresented
與確定是否顯示對話框的布爾值的綁定。當用戶按下或點擊對話框的默認操作按鈕時,係統將此值設置為
false
,關閉對話框。titleVisibility
對話框標題的可見性。默認值為
Visibility/automatic
。actions
返回對話框操作的視圖構建器。
message
返回對話框消息的視圖構建器。
詳述
在下麵的示例中,按鈕根據綁定的布爾變量的值有條件地顯示確認對話框。當布爾值設置為 true
時,係統會顯示一個確認對話框,其中包含取消操作和破壞性操作。
struct ConfirmEraseItems: View {
@State private var isShowingDialog = false
var body: some View {
Button("Empty Trash") {
isShowingDialog = true
}
.confirmationDialog(
"Permanently erase the items in the Trash?",
isPresented: $isShowingDialog
) {
Button("Empty Trash", role: .destructive) {
// Handle empty trash action.
}
} message: {
Text("You cannot undo this action.")
}
}
}
確認對話框中的所有操作將在操作運行後關閉對話框。默認按鈕將顯示得更加突出。您可以通過為其分配KeyboardShortcut/defaultAction
鍵盤快捷鍵來影響默認按鈕。
係統可以根據它們的作用和突出度對按鈕重新排序。
默認情況下,對話框包含標準的關閉操作。如果您提供一個角色為 ButtonRole/cancel
的按鈕,則該按鈕將代替默認的關閉操作。您不必使用取消按鈕的操作來關閉演示文稿。
在 iOS、tvOS 和 watchOS 上,確認對話框僅支持標簽為 Text
的控件。傳遞任何其他類型的視圖會導致內容被省略。
此修飾符代表您為標題創建 Text
視圖,並將本地化鍵視為類似於 Text/init(_:tableName:bundle:comment:)
。有關本地化字符串的更多信息,請參閱Text
。
可用版本
相關用法
- Swift Never confirmationDialog(_:isPresented:titleVisibility:actions:)用法及代碼示例
- Swift Never confirmationDialog(_:isPresented:titleVisibility:presenting:actions:message:)用法及代碼示例
- Swift Never confirmationDialog(_:isPresented:titleVisibility:presenting:actions:)用法及代碼示例
- Swift Never contextMenu(menuItems:)用法及代碼示例
- Swift Never contentShape(_:_:eoFill:)用法及代碼示例
- Swift Never contrast(_:)用法及代碼示例
- Swift Never controlSize(_:)用法及代碼示例
- Swift Never containerShape(_:)用法及代碼示例
- Swift Never colorMultiply(_:)用法及代碼示例
- Swift Never compositingGroup()用法及代碼示例
- Swift Never cornerRadius(_:antialiased:)用法及代碼示例
- Swift Never colorInvert()用法及代碼示例
- Swift Never coordinateSpace(name:)用法及代碼示例
- Swift Never clipShape(_:style:)用法及代碼示例
- Swift Never clipped(antialiased:)用法及代碼示例
- Swift Never pageCommand(value:in:step:)用法及代碼示例
- Swift Never opacity(_:)用法及代碼示例
- Swift Never accessibilityAction(action:label:)用法及代碼示例
- Swift Never alert(isPresented:error:actions:message:)用法及代碼示例
- Swift Never flipsForRightToLeftLayoutDirection(_:)用法及代碼示例
- Swift Never position(x:y:)用法及代碼示例
- Swift Never position(_:)用法及代碼示例
- Swift Never luminanceToAlpha()用法及代碼示例
- Swift Never accessibilityAction(_:_:)用法及代碼示例
- Swift Never previewDisplayName(_:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Never confirmationDialog(_:isPresented:titleVisibility:actions:message:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。