用法一
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
。
可用版本
用法二
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>(
_ 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
的按钮,则该按钮将代替默认的关闭操作。您不必使用取消按钮的操作来关闭演示文稿。
可用版本
相关用法
- Swift Optional confirmationDialog(_:isPresented:titleVisibility:actions:)用法及代码示例
- Swift Optional confirmationDialog(_:isPresented:titleVisibility:presenting:actions:message:)用法及代码示例
- Swift Optional confirmationDialog(_:isPresented:titleVisibility:presenting:actions:)用法及代码示例
- Swift Optional contentShape(_:_:eoFill:)用法及代码示例
- Swift Optional controlSize(_:)用法及代码示例
- Swift Optional contrast(_:)用法及代码示例
- Swift Optional containerShape(_:)用法及代码示例
- Swift Optional contextMenu(menuItems:)用法及代码示例
- Swift Optional colorMultiply(_:)用法及代码示例
- Swift Optional cornerRadius(_:antialiased:)用法及代码示例
- Swift Optional colorInvert()用法及代码示例
- Swift Optional coordinateSpace(name:)用法及代码示例
- Swift Optional compositingGroup()用法及代码示例
- Swift Optional clipShape(_:style:)用法及代码示例
- Swift Optional clipped(antialiased:)用法及代码示例
- Swift Optional symbolVariant(_:)用法及代码示例
- Swift Optional popover(isPresented:attachmentAnchor:arrowEdge:content:)用法及代码示例
- Swift Optional mask(alignment:_:)用法及代码示例
- Swift Optional listSectionSeparatorTint(_:edges:)用法及代码示例
- Swift Optional badge(_:)用法及代码示例
- Swift Optional fullScreenCover(isPresented:onDismiss:content:)用法及代码示例
- Swift Optional keyboardType(_:)用法及代码示例
- Swift Optional preferredColorScheme(_:)用法及代码示例
- Swift Optional background(_:ignoresSafeAreaEdges:)用法及代码示例
- Swift Optional saturation(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Optional confirmationDialog(_:isPresented:titleVisibility:actions:message:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。