實例方法
simultaneous
simultaneousGesture(_:including:)
將手勢附加到視圖以與視圖定義的手勢同時處理。
聲明
func simultaneousGesture<T>(
_ gesture: T,
including mask: GestureMask = .all
) -> some View where T : Gesture
參數
gesture
附加到視圖的手勢。
mask
控製將此手勢添加到視圖如何影響視圖及其子視圖識別的其他手勢的值。默認為
SwiftUI/GestureMask/all
。
詳述
當您需要以與視圖現有手勢相同的優先級同時定義和處理視圖特定手勢時,請使用此方法。下麵的示例定義了一個自定義手勢,該手勢將消息打印到控製台並將其附加到視圖的 VStack
。 VStack
內部是一個紅色的心 Image
定義了自己的 TapGesture
處理程序,該處理程序還向控製台打印一條消息和一個沒有自定義手勢處理程序的藍色矩形。
點擊或單擊 “heart” 圖像會向控製台發送兩條消息:一條用於圖像的點擊手勢處理程序,另一條來自附加到封閉垂直堆棧的自定義手勢處理程序。點擊或單擊藍色矩形隻會導致從附加到 VStack
的點擊識別器向控製台發送一條消息:
struct SimultaneousGestureExample: View {
@State private var message = "Message"
let newGesture = TapGesture().onEnded {
print("Gesture on VStack.")
}
var body: some View {
VStack(spacing:25) {
Image(systemName: "heart.fill")
.resizable()
.frame(width: 75, height: 75)
.padding()
.foregroundColor(.red)
.onTapGesture {
print("Gesture on image.")
}
Rectangle()
.fill(Color.blue)
}
.simultaneousGesture(newGesture)
.frame(width: 200, height: 200)
.border(Color.purple)
}
}
可用版本
iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+
相關用法
- Swift Optional symbolVariant(_:)用法及代碼示例
- Swift Optional saturation(_:)用法及代碼示例
- Swift Optional submitLabel(_:)用法及代碼示例
- Swift Optional speechAlwaysIncludesPunctuation(_:)用法及代碼示例
- Swift Optional submitScope(_:)用法及代碼示例
- Swift Optional scaledToFill()用法及代碼示例
- Swift Optional searchCompletion(_:)用法及代碼示例
- Swift Optional safeAreaInset(edge:alignment:spacing:content:)用法及代碼示例
- Swift Optional shadow(color:radius:x:y:)用法及代碼示例
- Swift Optional sheet(item:onDismiss:content:)用法及代碼示例
- Swift Optional scaledToFit()用法及代碼示例
- Swift Optional scenePadding(_:)用法及代碼示例
- Swift Optional scaleEffect(_:anchor:)用法及代碼示例
- Swift Optional scaleEffect(x:y:anchor:)用法及代碼示例
- Swift Optional swipeActions(edge:allowsFullSwipe:content:)用法及代碼示例
- Swift Optional sheet(isPresented:onDismiss:content:)用法及代碼示例
- 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 clipShape(_:style:)用法及代碼示例
- Swift Optional preferredColorScheme(_:)用法及代碼示例
- Swift Optional background(_:ignoresSafeAreaEdges:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Optional simultaneousGesture(_:including:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。