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
iOS 7 compatibility issues (UITextView)
Search
Kishikawa Katsumi
November 13, 2013
Technology
9
12k
iOS 7 compatibility issues (UITextView)
iOS 7 UITextView has many critical bugs. Introduce workaround or alternative libraries.
Kishikawa Katsumi
November 13, 2013
Tweet
Share
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
iOSでSVG画像を扱う
kishikawakatsumi
0
180
Build your own WebP codec in Swift
kishikawakatsumi
2
1.1k
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
270
Enhancing Applications with Accessibility API
kishikawakatsumi
3
4.8k
Mastering SwiftSyntax
kishikawakatsumi
4
7k
My SwiftData Review
kishikawakatsumi
7
1.5k
Swift Expression Macros: a practical introduction
kishikawakatsumi
3
2k
Xcode Cloudの評価
kishikawakatsumi
2
1.4k
Regular expressions basics/正規表現の基本
kishikawakatsumi
7
810
Other Decks in Technology
See All in Technology
東京大学「Agile-X」のFPGA AIデザインハッカソンを制したソニーのAI最適化
sony
0
180
ストレージエンジニアの仕事と、近年の計算機について / 第58回 情報科学若手の会
pfn
PRO
4
940
AIでデータ活用を加速させる取り組み / Leveraging AI to accelerate data utilization
okiyuki99
6
1.6k
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
3
5.3k
DMMの検索システムをSolrからElasticCloudに移行した話
hmaa_ryo
0
320
[re:Inent2025事前勉強会(有志で開催)] re:Inventで見つけた人生をちょっと変えるコツ
sh_fk2
1
1.1k
20251027_findyさん_音声エージェントLT
almondo_event
2
520
Amazon Q Developer CLIをClaude Codeから使うためのベストプラクティスを考えてみた
dar_kuma_san
0
300
プロファイルとAIエージェントによる効率的なデバッグ / Effective debugging with profiler and AI assistant
ymotongpoo
1
670
re:Invent 2025の見どころと便利アイテムをご紹介 / Highlights and Useful Items for re:Invent 2025
yuj1osm
0
550
進化する大規模言語モデル評価: Swallowプロジェクトにおける実践と知見
chokkan
PRO
3
420
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
210
Featured
See All Featured
For a Future-Friendly Web
brad_frost
180
10k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Invisible Side of Design
smashingmag
302
51k
Balancing Empowerment & Direction
lara
5
710
Making Projects Easy
brettharned
120
6.4k
How GitHub (no longer) Works
holman
315
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
The Cost Of JavaScript in 2023
addyosmani
55
9.1k
Documentation Writing (for coders)
carmenintech
76
5.1k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Context Engineering - Making Every Token Count
addyosmani
8
330
Facilitating Awesome Meetings
lara
57
6.6k
Transcript
J04DPNQBUJCJMJUZJTTVFT 6*5FYU7JFX BOETPPO IUUQTHJUIVCDPNLJTIJLBXBLBUTVNJ5FYU7JFX$PNQBUJCJMJUZ
؛ࠀݾ http://kishikawakatsumi.com Twitter @k_katsumi 24/7 twenty-four seven http://d.hatena.ne.jp/KishikawaKatsumi/
J04SFMFBTFECVUTPNFDSJUJDBM CVHTTUJMMSFNBJOFE w #SPLFO6*5FYU7JFX w #SPLFO6*4FBSDI#BS w #SPLFO6*1PQPWFS$POUSPMMFS TJODFBMPOHUJNFBHP
w (VJEFE"DDFTT w "JS1SJOU ʜBOETPPO
6*5FYU7JFX
/PUTDSPMMJOHUPDBSFUQPTJUJPOXIFOGPDVTFE 5IFDBSFUJTNBZCFIFSF
/PUTDSPMMJOHXIFOJOTFSUOFXMJOF
0DDVSTPO"QQMF`T"QQBOE'SBNFXPSLT
8PSLBSPVOE
- (void)scrollRangeToVisible:(NSRange)range { [super scrollRangeToVisible:range]; if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {
if (self.layoutManager.extraLineFragmentTextContainer != nil && self.selectedRange.location == range.location) { CGRect caretRect = [self caretRectForPosition:self.selectedTextRange.end]; [self scrollRectToVisible:caretRect animated:NO]; } } } 4VCDMBTTJOHQBUDI
1BUDIJOEFMFHBUFNFUIPE - (void)textViewDidChange:(UITextView *)textView { NSString *text = textView.text; NSRange
selectedRange = textView.selectedRange; textView.scrollEnabled = NO; textView.text = nil; textView.text = text; selectedRange.length = 0; textView.selectedRange = selectedRange; textView.scrollEnabled = YES; }
3FBEEFWGPSVNCFGPSFVTJOH
3FBECFGPSFVTJOH w IUUQTEFWGPSVNTBQQMFDPNNFTTBHF w IUUQJOFTTFOUJBMDPNCVHT
0UIFS4PMVUJPOT w +545FYU7JFXIUUQTHJUIVCDPNKBSFETJODMBJS+545FYU7JFX w *$5FYU7JFXIUUQTHJUIVCDPN&YJMF*$5FYU7JFX w 4&$PSF5FYU7JFXIUUQTHJUIVCDPNLJTIJLBXBLBUTVNJ4&$PSF5FYU7JFX w IUUQTHJTUHJUIVCDPNBHJMFUPSUPJTFBDDCGEBBGCBCD w
IUUQTEFWGPSVNTBQQMFDPNNFTTBHF
+545FYU7JFX
.ZTBNQMFXPSLBSPVOE IUUQTHJUIVCDPNLJTIJLBXBLBUTVNJ5FYU7JFX$PNQBUJCJMJUZ
-JOLXJUI6*5FYU7JFX
4IPVMEVTFSEQBSUZMJCSBSJFT w 4&$PSF5FYU7JFXIUUQTHJUIVCDPNLJTIJLBXBLBUTVNJ4&$PSF5FYU7JFX w 8."5XFFU7JFXIUUQTHJUIVCDPNNBSLCFBUPO8."5XFFU7JFX w 555"UUSJCVUFE-BCFMIUUQTHJUIVCDPNNBUUU555"UUSJCVUFE-BCFM w 6;5FYU7JFXIUUQTHJUIVCDPNTPOTPOHJUIVC6;5FYU7JFX
4&$PSF5FYU7JFX
8."5XFFU7JFX
6;5FYU7JFX