OffsetPosition
Skip support for SwiftUI.offset ↗.
The following example screens and source code is from SkipUI’s
Showcase sample app
OffsetPositionPlayground.swift ↗
import SwiftUI
struct OffsetPositionPlayground: View { var body: some View { ScrollView { VStack(spacing: 16) { HStack { Text(".offset(0, 0)") Spacer() ZStack { Color.clear .frame(width: 100, height: 100) .border(.primary) Color.red .frame(width: 20, height: 20) .offset(x: 0, y: 0) } } HStack { Text(".offset(50, -50)") Spacer() ZStack { Color.clear .frame(width: 100, height: 100) .border(.primary) Color.red .frame(width: 20, height: 20) .offset(x: 50, y: -50) } } HStack { Text(".offset(-50, 50)") Spacer() ZStack { Color.clear .frame(width: 100, height: 100) .border(.primary) Color.red .frame(width: 20, height: 20) .offset(x: -50, y: 50) } } HStack { Text(".offset(CGSize(50, 50))") Spacer() ZStack { Color.clear .frame(width: 100, height: 100) .border(.primary) Color.red .frame(width: 20, height: 20) .offset(CGSize(width: 50, height: 50)) } } HStack { Text(".position(0, 0)") Spacer() ZStack { Color.red .frame(width: 20, height: 20) .position(x: 0, y: 0) } .frame(width: 100, height: 100) .border(.primary) } HStack { Text(".position(50, 50)") Spacer() ZStack { Color.red .frame(width: 20, height: 20) .position(x: 50, y: 50) } .frame(width: 100, height: 100) .border(.primary) } HStack { Text(".position(CGPoint(75, 75))") Spacer() ZStack { Color.red .frame(width: 20, height: 20) .position(CGPoint(x: 75, y: 75)) } .frame(width: 100, height: 100) .border(.primary) } NavigationLink("Push Text.position(100, 100)") { Text("Over here!") .background(.yellow) .position(x: 100, y: 100) } } .padding() } .toolbar { PlaygroundSourceLink(file: "OffsetPositionPlayground.swift") } }}