Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
徐々に増えているSwiftUI Anchor関連API
Search
tokizo
October 13, 2025
1
1.1k
徐々に増えているSwiftUI Anchor関連API
tokizo
October 13, 2025
Tweet
Share
More Decks by tokizo
See All by tokizo
iOS 曜日ランキングが出来上がるまで
tokizuoh
0
2.6k
メインスレッドをブロックさせないためのSwift Concurrencyクイズ
tokizuoh
1
5.7k
運動モチベーション継続のためのiOSアプリ開発
tokizuoh
0
1k
Xcode 15 で swift run が遅い
tokizuoh
0
3.8k
モノレポにおける path-filtering利用時でも GitHub ステータスのRequiredを 機能させたい!
tokizuoh
1
1.5k
累積和で配列の処理効率を改善しよう
tokizuoh
0
700
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The Pragmatic Product Professional
lauravandoore
37
7.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Making Projects Easy
brettharned
120
6.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.8k
How to make the Groovebox
asonas
2
2k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Navigating Team Friction
lara
192
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
徐々に増えている SwiftUI Anchor 関連API tokizo / @tokizuoh 2025/10/10 DroidKaigi &
iOSDC After Talks Night 1
2 SwiftUI Anchor 使っていますか?
3 SwiftUI Anchorを 使えたり、受け取るAPIは 年々増えている
4 今日はいくつか 関連APIを紹介
rotation3DEffect (_:axis:anchor:anchorZ:perspective:) • iOS 13.0+ • Viewを指定した軸を中心に3次元で回転 • 回転の中心をAnchorで指定 5
https://developer.apple.com/documentation/SwiftUI/Vie w/rotation3DEffect(_:axis:anchor:anchorZ:perspective:)
6 rotation3DEffect (_:axis:anchor:anchorZ:perspective:)
gridCellAnchor(_:) • iOS 16.0+ • Gridのセル内での配置をAnchorで指定 7 https://developer.apple.com/documentation/swiftui/view /gridcellanchor(_:)
• 左: 与えられた領域の中央寄せ • 右: gridCellAnchor を使って 全体の中央寄せ ◦ 🟥
.gridCellAnchor(.bottomLeading) ◦ 本API登場前は数ステップ必要だった i. セル内の要素のサイズ取得 ii. セルのサイズ取得 iii. セルの内側の端まで要素をoffset移動 gridCellAnchor(_:) 8
ViewAlignedScrollTargetBehavior (limitBehavior:anchor:) • iOS 26.0+ ◦ Anchorなし版はiOS 17.0+ • スクロール要素の端を所定の位置で停止できる
◦ scrollTargetBehavior(_:) に渡して使用 • スクロールする要素の止まる位置をAnchorで指定 9 https://developer.apple.com/documentation/swiftui/view alignedscrolltargetbehavior/init(limitbehavior:anchor:)
• スクロール後は一番近い要素の左端で 止まる ◦ anchor: .leading を指定 10 ViewAlignedScrollTargetBehavior (limitBehavior:anchor:)
11 Anchor文脈の .leading などは何者なのか
12 定義を見てみる
Anchorで指定できる型はUnitPoint 13
相対的な値で表現されている 14
15 カスタムなUnitPointを渡せば 表現の幅が広がりそう
16 試しに、子要素の幅 ⅔ で スクロールを止めてみる
17 子要素の幅 ⅔ でスクロールを止める
18 子要素の幅 ⅔ でスクロールを止める
まとめ • 3つのAnchor関連のAPIを紹介した ◦ rotation3DEffect ◦ gridCellAnchor ◦ ViewAlignedScrollTargetBehavior •
Anchorを受け取るAPIが増えている • AnchorはUnitPointで値を指定することで より細やかに位置関係を定義できる 19
20 おわり