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
Effective UIScrollView
Search
Jiro Nagashima
March 12, 2015
Technology
0
3.5k
Effective UIScrollView
Jiro Nagashima
March 12, 2015
Tweet
Share
More Decks by Jiro Nagashima
See All by Jiro Nagashima
グロースを加速するLooker活用 / Leveraging Looker to accelerate growth
hedjirog
3
2.9k
プロダクトの成長を支えるKPI / KPIs for growing your product
hedjirog
17
3.9k
UIViewPropertyAnimatorで実現するリッチなアニメーション表現
hedjirog
4
2.3k
ReactorKit at Wantedly
hedjirog
2
990
ReactorKitを利用した緩やかなアーキテクチャの移行
hedjirog
3
1.5k
限られたリソースで進める段階的なSwit移行
hedjirog
2
5.3k
エンジニア・デザイナーで取り組むグロースハック
hedjirog
6
2.4k
iOS 10 時代のアニメーション / Introduction to UIViewPropertyAnimator
hedjirog
3
3.1k
How we use fastlane at Wantedly
hedjirog
9
11k
Other Decks in Technology
See All in Technology
Flutterでキャッチしないエラーはどこに行く
taiju59
0
220
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
11
4.4k
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
110
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.2k
Obsidian応用活用術
onikun94
1
420
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
1.1k
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
170
エラーとアクセシビリティ
schktjm
0
1.1k
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
180
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
420
kubellが考える戦略と実行を繋ぐ活用ファーストのデータ分析基盤
kubell_hr
0
150
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
2
160
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Building Applications with DynamoDB
mza
96
6.6k
Done Done
chrislema
185
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Balancing Empowerment & Direction
lara
3
610
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
187
54k
How STYLIGHT went responsive
nonsquared
100
5.8k
For a Future-Friendly Web
brad_frost
180
9.9k
KATA
mclloyd
32
14k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Transcript
&GGFDUJWF 6*4DSPMM7JFX !IFEKJSPH
ͳ͕͠·͡Ζ͏ !IFEKJSPH 4BOTBOגࣜձࣾ&JHIU
5JQT δΣενϟʔΛϏϡʔʹৡͯ͠ 6*4DSPMM7JFXͷഎޙɾલ໘ͰλοϓՄೳʹʂ
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFX ᵓᴷ6*#VUUPO 6*#VUUPO 6*4DSPMM7JFX
7JFXߏ
6*7JFX 6*7JFX ᵓᴷ ᵓᴷ ᵓᴷ
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ ᵓᴷ
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFX ᵓᴷ 6*4DSPMM7JFX
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFX ᵓᴷ6*#VUUPO 6*#VUUPO 6*4DSPMM7JFX
՝
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFX ᵓᴷ6*#VUUPO 6*#VUUPO 6*4DSPMM7JFX λοϓͰ͖ͳ͍ʂ
scrollView.userInteractionEnabled = false view.addGestureRecognizer(scrollView.panGestureRecognizer) ରॲ๏
scrollView.userInteractionEnabled = false view.addGestureRecognizer(scrollView.panGestureRecognizer) ରॲ๏ w 6*4DSPMM7JFXͷແޮԽ w QBO(FTUVSF3FDPHOJ[FSΛ 6*7JFXʹՃ
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFXʢແޮԽʣ ᵓᴷ6*#VUUPO 6*#VUUPO 6*4DSPMM7JFXʢແޮԽʣ λοϓՄೳ
՝
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFXʢແޮԽʣ ᵓᴷ6*#VUUPOʢແޮԽʣ 6*#VUUPOʢແޮԽʣ 6*4DSPMM7JFXʢແޮԽʣ λοϓͰ͖ͳ͍ʂ
override func hitTest(point: CGPoint, withEvent event: UIEvent?) -> UIView? {
let hitView = super.hitTest(point, withEvent: event) if hitView == self { return nil } return self } ରॲ๏
override func hitTest(point: CGPoint, withEvent event: UIEvent?) -> UIView? {
let hitView = super.hitTest(point, withEvent: event) if hitView == self { return nil } return self } ରॲ๏ w )JU5FTUͰ6*4DSPMM7JFXͷ λοϓఆΛແࢹͤ͞Δ
scrollView.userInteractionEnabled = false view.addGestureRecognizer(scrollView.panGestureRecognizer) ରॲ๏ w 6*4DSPMM7JFX༗ޮԽ
6*7JFX 6*#VUUPO 6*7JFX ᵓᴷ6*#VUUPO ᵓᴷ6*4DSPMM7JFXʢλοϓఆແࢹʣ ᵓᴷ6*#VUUPO 6*#VUUPO 6*4DSPMM7JFXʢλοϓఆແࢹʣ λοϓՄೳ
·ͱΊ
·ͱΊ δΣενϟʔΛϏϡʔʹৡͯ͠ 6*4DSPMM7JFXͷഎޙɾલ໘ͰλοϓՄೳʹʂ w BEE(FTUVSF3FDPHOJ[FSϝιουΛར༻ w )JU5FTUΛௐ