$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UINavigationBarの隅々までタップしたい
Search
Yosuke Ishikawa
November 13, 2013
Technology
2
11k
UINavigationBarの隅々までタップしたい
2013/11/13 potatotips
https://github.com/potatotips/potatotips/wiki/potatotips-1
Yosuke Ishikawa
November 13, 2013
Tweet
Share
More Decks by Yosuke Ishikawa
See All by Yosuke Ishikawa
効率的な開発手段として VRTを活用する
ishkawa
1
210
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
4.3k
Achieving Testability in Presentation Layer
ishkawa
4
3.8k
Introducing Wire: Dependency Injection by Code Generator
ishkawa
12
1.3k
Declarative UICollectionView
ishkawa
28
8.3k
Nuxt.jsが掲げる"Universal Vue.js Applications"とは何者か
ishkawa
10
2.8k
Static Dependency Injection by Code Generation
ishkawa
15
6.6k
実践クライアントサイドSwift
ishkawa
24
4.3k
JSON-RPC on APIKit
ishkawa
5
63k
Other Decks in Technology
See All in Technology
Excelデータ分析で学ぶディメンショナルモデリング ~アジャイルデータモデリングへ向けて~ by @Kazaneya_PR / 20251126
kazaneya
PRO
3
820
Agents IA : la nouvelle frontière des LLMs (Tech.Rocks Summit 2025)
glaforge
0
320
あなたの知らないDateのひみつ / The Secret of "Date" You Haven't known #tqrk16
expajp
0
110
機械学習を「社会実装」するということ 2025年冬版 / Social Implementation of Machine Learning November 2025 Version
moepy_stats
4
2.1k
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
160
Modern Data Stack大好きマンが語るSnowflakeの魅力
sagara
0
260
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9.8k
Digital omtanke på Internetdagarna 2025
axbom
PRO
0
170
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
630
[続・営業向け 誰でも話せるOCI セールストーク] AWSよりOCIの優位性が分からない編(2025年11月21日開催)
oracle4engineer
PRO
1
220
Master Dataグループ紹介資料
sansan33
PRO
1
4k
こがヘンだよ!Snowflake?サービス名称へのこだわり
tarotaro0129
0
100
Featured
See All Featured
Docker and Python
trallard
46
3.7k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Code Reviewing Like a Champion
maltzj
527
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
4 Signs Your Business is Dying
shpigford
186
22k
Music & Morning Musume
bryan
46
7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
700
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Transcript
UINavigationBarͷ ۱ʑ·Ͱλοϓ͍ͨ͠ @_ishkawa
None
GHFeed
ຊ
Custom View λοϓ͍ͨ͠ͱ͜Ζ
͔ͯ͠͠ɿ ✗ Tips ✓ όουϊϋ
ΞΠσΟΞ ✓ UINavigationBarͷhitTest:withEvent:Λվ
hitTest:withEvent: leftBarButtonItem.customView
hitTest:withEvent: navigationBar
͜ͷͱ͖
for (UIView *subview in barButtonItem.customView.subviews) { UIView *customView = barButtonItem.customView;
CGRect convertedRect = [self convertRect:subview.frame fromView:customView]; ! if (CGRectContainsPoint(convertedRect, point)) { CGPoint convertedPoint = [self convertPoint:point toView:subview]; return [subview hitTest:convertedPoint withEvent:event]; } } ʢcustomView.subviews͔Βhit͢ΔͷΛ୳͢ʣ
ͬͯΔͱ
ίίʹϘλϯ͕͋ͬͯԠͰ͖Δʂ
ҰԠϥΠϒϥϦʹ͠·ͨ͠
ISInteractiveEdgesNavigationBar https://github.com/ishkawa/ISInteractiveEdgesNavigationBar
͍ํ Class navigationBarClass = [ISInteractiveEdgesNavigationBar class]; Class toolbarClass = [UIToolbar
class]; ! UINavigationController *navigationController = [[UINavigationController alloc] initWithNavigationBarClass:navigationBarClass toolbarClass:toolbarClass];
pod ‘ISInteractiveEdgesNavigationBar‘, ‘~> 0.0.2’