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
690
徐々に増えているSwiftUI Anchor関連API
tokizo
October 13, 2025
Tweet
Share
More Decks by tokizo
See All by tokizo
iOS 曜日ランキングが出来上がるまで
tokizuoh
0
2.4k
メインスレッドをブロックさせないためのSwift Concurrencyクイズ
tokizuoh
1
5.4k
運動モチベーション継続のためのiOSアプリ開発
tokizuoh
0
980
Xcode 15 で swift run が遅い
tokizuoh
0
3.7k
モノレポにおける path-filtering利用時でも GitHub ステータスのRequiredを 機能させたい!
tokizuoh
1
1.5k
累積和で配列の処理効率を改善しよう
tokizuoh
0
670
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Embracing the Ebb and Flow
colly
88
4.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Into the Great Unknown - MozCon
thekraken
40
2.2k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Fireside Chat
paigeccino
41
3.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Site-Speed That Sticks
csswizardry
13
970
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Git: the NoSQL Database
bkeepers
PRO
432
66k
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 おわり