Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Modernizing Your UI for iOS 13 @hirothings
Slide 2
Slide 2 text
https://developer.apple.com/videos/play/wwdc2019/224/
Slide 3
Slide 3 text
Agenda • New Presentation Style (Demo) • Menus (Demo) • Search (Demo)
Slide 4
Slide 4 text
ࣗݾհ • @hirothings (Objective-ͻΖC) • ݩϥʔϝϯళϓϩάϥϚʔ • ৭ʑ͋ͬͯݱࡏiOSσϕϩούʔ • Money Forward, Inc.
Slide 5
Slide 5 text
New Presentation Style
Slide 6
Slide 6 text
New Presentation Style • ϋʔϑϞʔμϧ͕ඪ४UIͱͯ͠ొ • Xcode11 betaͰϏϧυ • Կ͠ͳͯ͘ϋʔϑϞʔμϧ • (portraitϞʔυͷ߹) • UIModalPresentationStyle.pageSheet͕దԠ ͞ΕΔ
Slide 7
Slide 7 text
New Presentation Style Demo..
Slide 8
Slide 8 text
UIModalPresentationStyle.a utomatic (iOS13~) • γεςϜ͕ࣗಈͰϞʔμϧͷελΠϧΛৼΓ͚Δ • ΄ͱΜͲͷ߹ɺ.pageSheet͕దԠ͞ΕΔ • .pageSheetϥϯυεέʔϓϞʔυͷ߹ɺ .fullScreenͱಉ͡ ڍಈʹͳΔ
Slide 9
Slide 9 text
Կࢦఆ͍ͯ͠ͳ͍߹ͷɺ UIModalPresentationStyle iOS12: .fullScreen iOS13: .pageSheet ※͍ͣΕportraitϞʔυ
Slide 10
Slide 10 text
“ฤूத”ͷϋʔϑϞʔμϧΛϢʔ βʔ͕εϫΠϓͰด͡Α͏ͱͨ͠ ͱ͖ͷ੍ޚʹ͍ͭͯ
Slide 11
Slide 11 text
No content
Slide 12
Slide 12 text
No content
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
Demo..ɹ(Appleެࣜ) IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZ XXED
Slide 15
Slide 15 text
presentationControllerDidA ttemptToDismiss(_:) • Ϣʔβʔ͕εϫΠϓͰϞʔμϧΛด͡Δͱ੍͖ޚ ͕Մೳ • ϋʔϑϞʔμϧ࣌ͷDelegateϝιου
Slide 16
Slide 16 text
presentationControllerDidA ttemptToDismiss(_:) • UIAdaptivePresentationControllerDelegateͷNewϝ ιου • isModalInPresentation(iOS13~)͕true·ͨ presentationControllerShouldDismiss͕falseͷ߹ɺ͜ ͷϝιου͕ݺΕΔ
Slide 17
Slide 17 text
࣮ͷྲྀΕ 1. isModalInPresentationΛ੍ޚ
Slide 18
Slide 18 text
࣮ͷྲྀΕ 2. presentationControllerDidAttemptToDismiss(_:) ͰΞϥʔτΛग़͢ isModalInPresentation = trueͳͷͰݺΕΔ
Slide 19
Slide 19 text
ϑϩʔ
Slide 20
Slide 20 text
Context Menus
Slide 21
Slide 21 text
• ϦονϓϨϏϡʔ • ωετͨ͠αϒϝχϡʔ • Ұ؏ͨ͠δΣενϟ • 3D Touch • Haptic Touch • Long press • Secondary click Context Menus
Slide 22
Slide 22 text
Demo https://github.com/hirothings/Context-Menus-Demo Context Menus
Slide 23
Slide 23 text
UIContextMenuInteractionDel egate • UIViewͳͲʹContext MenuදࣔͷΠϯλϥΫ γϣϯΛ༩ • ࣮ඞཁͳϝιουDelegateϝιου1͚ͭͩ
Slide 24
Slide 24 text
UIContextMenuConfiguration • UITableView and UICollectionView • ؆୯ʹϝχϡʔΛදࣔͰ͖ΔDelegate͕Ճ
Slide 25
Slide 25 text
UIContextMenuConfiguration
Slide 26
Slide 26 text
UIContextMenuConfiguration • previewProvider: ϓϨϏϡʔΛฦ͢ViewControllerΛࢦఆ • actionProvider: ϝχϡʔͱΞΫγϣϯΛࢦఆ ※࣮ଶΫϩʔδϟͷtypealias
Slide 27
Slide 27 text
※ϝχϡʔදࣔͷίʔυશମ
Slide 28
Slide 28 text
Search
Slide 29
Slide 29 text
UISearchTextField
Slide 30
Slide 30 text
UISearchTextField • ؆୯ʹUISearchBarͷtextField͕ΧελϚΠζͰ ͖ΔΑ͏ʹͳͬͨ (ࠓ·ͰViewͷ֊Λ۷ͬͯΧελϚΠζ͢ΔͳͲΧελϚΠ ζ͕ΊΜͲ͔ͬͨ͘͞) UISearchTextField
Slide 31
Slide 31 text
UISearchToken
Slide 32
Slide 32 text
• ͜Μͳײ͡ͷλάදࣔΛެࣜαϙʔτ UISearchToken
Slide 33
Slide 33 text
Demo..
Slide 34
Slide 34 text
͕ٙଟ͍.. (ཧղෆͷՄೳੑ͋Γ) UISearchToken • tokenΛΩʔϘʔυͷdeleteϘλϯͰআͨ͠ͱ ͖ͷΠϕϯτ͕ݟͨΒͳ͍ • tokenͷจࣈྻͷΞΫηε͕value(forKey key: String)Ҏ֎ݟͨΒͳ͍ • Ϣʔεέʔε͕ϋοΩϦΘ͔Βͳ͔ͬͨ
Slide 35
Slide 35 text
• ެࣜsample..
Slide 36
Slide 36 text
ݟͨΒͳ͍ • ެࣜsample..͕ݟͨΒͳ͍(ݟ͚ͭΕͯͳ͍͚͔ͩ͠Εͳ͍)
Slide 37
Slide 37 text
• ٿ্ʹsample͕ݟͨΒͳ͍(ݟ͚ͭΕͯͳ͍͚͔ͩ͠Εͳ͍) 4XJGU݅
Slide 38
Slide 38 text
More Information https://developer.apple.com/wwdc19/224
Slide 39
Slide 39 text
ϑϧFirebaseͰݸਓΞϓϦ࡞Γ·ͨ͠
Slide 40
Slide 40 text
ܦඅ is God !! ܦඅ is God !! Join us!! iOSΤϯδχΞઈࢍืूதͰ͢