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
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
250
Enhancing Applications with Accessibility API
kishikawakatsumi
3
4.5k
Mastering SwiftSyntax
kishikawakatsumi
4
6.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
800
家のいろいろな数値を計測する
kishikawakatsumi
4
2.3k
GitHub Actionsでテストの結果をわかりやすく表示する
kishikawakatsumi
1
1.3k
Other Decks in Technology
See All in Technology
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
3
920
実運用で考える PGO
kworkdev
PRO
0
150
Grafana Meetup Japan Vol. 6
kaedemalu
1
200
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
9
4.2k
AWSで推進するデータマネジメント
kawanago
0
1k
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
0
280
Codeful Serverless / 一人運用でもやり抜く力
_kensh
4
120
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
11
910
AIエージェントの活用に重要な「MCP (Model Context Protocol)」とは何か
masayamoriofficial
0
290
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
540
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
720
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
2
340
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
800
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
910
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Site-Speed That Sticks
csswizardry
10
810
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
GitHub's CSS Performance
jonrohan
1032
460k
Making Projects Easy
brettharned
117
6.4k
We Have a Design System, Now What?
morganepeng
53
7.8k
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