Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Swift愛好会 #28
Search
Satoru Ohguchi
February 18, 2018
Technology
580
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift愛好会 #28
Satoru Ohguchi
February 18, 2018
More Decks by Satoru Ohguchi
See All by Satoru Ohguchi
BG770A_photo_transfer_v2.pdf
ochicchi
0
110
Use the M5Stack with 3G Modem
ochicchi
0
2.3k
Play with M5Stack
ochicchi
1
2.2k
How to study AWS IoT
ochicchi
0
1.2k
How to use OMRON sensors and M5Stack
ochicchi
0
110
IotLT_52-HobbyOmronSensors.pdf
ochicchi
2
820
JAWS-UG Beginner 2018/06/22
ochicchi
0
620
Swift愛好会初心者ハンズオン(vol.31)
ochicchi
0
270
Swift入門者向けハンズオンからの学び
ochicchi
1
460
Other Decks in Technology
See All in Technology
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
220
AIに会社の文脈を理解させる技術~上流工程・非エンジニアにも広げるハーネスエンジニアリング実践~
ochtum
0
190
AI臭い文章とは何なのか
nasuvitz
36
72k
【ゲームメーカーズスクランブル2026】『Shadowverse: Worlds Beyond』UIとアニメーションで実現する最高のユーザー体験を叶えるプロトタイピング
cygames
PRO
1
700
いちAWSエンジニアのAI活用を振り返る #devio2026 / devio osaka 2026 kawahara
masahirokawahara
1
270
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
810
猫でもわかるKiro Web
kentapapa
1
150
Coil3を内部実装から読み解く~キャッシュ戦略とAVIF画像の描画〜/nikkei-tech-talk50
nikkei_engineer_recruiting
0
140
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
660
PQC移行の今 -- IETF からみた現在地
satokan
4
620
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
460
顧客の成果創出とプロダクトの成長を 両立するためのFDE
sansantech
PRO
0
420
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
Exploring anti-patterns in Rails
aemeredith
4
520
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
750
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Designing Experiences People Love
moore
143
24k
Thoughts on Productivity
jonyablonski
76
5.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Bash Introduction
62gerente
615
220k
Building Applications with DynamoDB
mza
96
7.2k
For a Future-Friendly Web
brad_frost
183
10k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
480
Transcript
J04ΞϓϦ։ൃͷॳา SwiftѪձ #28
ΨΠμϯε • SwiftѪձͷ৽͍͠औΓΈͱͯ͠ɺॳ৺ऀϋϯ ζΦϯΛͬͯΈΑ͏ͱ͍͏͜ͱʹͳΓ·ͨ͠ɻ • ༗ࢤʹΑΔϋϯζΦϯͱͳΓ·͢ͷͰɺࢸΒͳ͍ ͳͲ͋Δ͔͠Ε·ͤΜɻ͝ڠྗɺ͝ཧղ͍ͨͩ ͖·͢Α͏͓ئ͍͍ͨ͠·͢ɻ
ࣗݾհ • ࢘ձਐߦͷհ • Reiko Goto(@burakon) • Satoru Ohguchi(@o_chicchi) •
ϝϯλʔਞͷհ • ҰݴͣͭࣗݾհԼ͍͞ɻ
͡Ίʹ • ຊͷਐΊํ • αϯϓϧϓϩάϥϜΛ͢Δ͜ͱΛΰʔϧͱ͠·͢ɻ • ࠷ॳʹ֓ཁͳͲΛઆ໌͠·͢ɻ • ͻͱ·ͱ·Γຖʹઆ໌ɺ࣮ࡍͬͯ͘ͷ܁Γฦ͠Ͱ͢ɻ •
ਵ࣌ɺ࣭͍ͯͩ͘͠͞ɻ • ૢ࡞ͷ͔Βͳ͍ͳͲɺϝϯλʔʹϔϧϓΛٻΊͯ Լ͍͞ɻ • άϧʔϓͰॿ͚߹͍ͳ͕ΒਐΊ͍͚ͯͨͩΔ͜ͱظ͠ ͍ͯ·͢ɻ
άϧʔϓ୯ҐͰࣗݾհ • ໊͓લɺχοΫωʔϜͰΑ͍Ͱ͢ɻ • ֶੜ? ࣾձਓ? • ;ͩΜ͍ͬͯΔ͜ͱ(ࣄͷ͜ͱͱ͔ɺઐ߈ͷ͜ ͱͱ͔) •
SwiftҎ֎ͷݴޠͷܦݧͱɺSwiftͷܦݧ
ࢀՃऀΞϯέʔτ(1) •ֶੜͰ͋Δ •ए͍ࣾձਓͰ͋Δ •͏ए͘ͳ͍ࣾձਓͰ͋Δ •·ͩ·ͩݩؾͳدΓͰ͋Δ
ࢀՃऀΞϯέʔτ(2) • ࢲɺ·ͬͨ͘ͷॳ৺ऀͰɺMacΛ৮Δͷɺϓ ϩάϥϜ͢ΔͷॳΊͯͩɻ(͓͓ΉͶ1ະຬ) • ଞͷݴޠͰͷϓϩάϥϛϯάܦݧ͋Δ(ઙͯ͘ Մ)ɺiOSͷϓϩάϥϜΛॻ͍ͯΈ͍͔ͨΒɺࠓ དྷͯΈͨɻ • ΞϓϦΛ࡞ͬͯΈͨͯ͘ɺॻ੶ͳͲͰֶश͍ͯ͠
Δ͕ɺͳ͔ͳ͔शಘʹࢸΒͣɺۤ࿑͍ͯ͠Δɻ
ࢀՃऀΞϯέʔτ(3) •Apple Developer Program ʹ •ࢀՃ͍ͯ͠Δ(ొ͍ͯ͠Δ) •ࢀՃ͍ͯ͠ͳ͍(ొ͍ͯ͠ͳ͍)
͞ͳ͍͜ͱ • Swiftͷϓϩάϥϛϯάগ͚͔ͩ͠͠Γ·ͤΜɻ • Storyboard গ͚͔ͩ͠͠Γ·ͤΜɻ • ڽͬͨϨΠΞτɺਂ͍ϓϩάϥϛϯάʹ͍ͭͯ ѻ͍·ͤΜɻ •
ઃܭख๏ͱ͍ͬͨ͜ͱʹ৮Ε·ͤΜɻςετपล ͷίʔυ৮Ε·ͤΜɻ • ΞϓϦͷϦϦʔεʹ͚ͨొํ๏ɺసૹํ๏ʹͭ ͍ͯ৮Ε·ͤΜɻ
ϓϩάϥϛϯάֶशʹ͍ͭͯ
ϓϩάϥϜΛश͏ಈػ • Կ͔࡞ͬͯΈ͍ͨαʔϏεɺΞϓϦ͕͋ͬͯɺͦ ͷͨΊʹֶश͢Δɻ • ब৬ɺస৬׆ಈʹ༗ར͔ͩΒɺֶशͯ͠༗རʹਐ Ί͍ͨɻ • ͰɺαʔϏεΞϓϦΛͤ͞Δ͜ͱ͕ॏཁ ͰɺʮJavaΛश͍ͬͯ·͢ʯͱ͍͏ΑΓɺՌ͕
͋Δ΄͏͕Α͍ɻ
ϓϩάϥϛϯάݴޠʹ͍ͭͯ • Ͳͷݴޠ͔ΒೖͬͯɺͲΕͰ͍͍ͱࢥ͏ɻͰ ɺࠓɺSwiftɻSwift ਪͰ͖ΔɺΑ͘Ͱ͖ ͨݴޠͩͱࢥ͏ɻ • ಘҙͳݴޠΛɺ1ͭ࣋ͭ͜ͱ͕ॏཁɻಘҙͳݴޠΛ ෳʹͰ͖ͨΒɺͰ͖Δ͜ͱ͕͕Δɻ •
1ͭͷݴޠΛशಘͰ͖Εɺଞͷݴޠʹ͍͛ͯ͘ ͜ͱɺͦΜͳʹ͘͠ͳ͍ɻ
ϓϩάϥϛϯάֶशͷίπ • ίϐʔ&ϖʔετ͚ͩͰɺͳ͔ͳֶ͔श͍͠ɻ • ࣮ࡍʹɺλΠϓͯ͠ɺಈ͖Λ֬ೝ͠ͳ͕ΒΔͷ͕ Α͍ɻ • ͳͥɺ͜͏ಈ͘ͷ͔ɺϩδοΫ͕Ͳ͏ͳ͍ͬͯΔͷ ͔ɺཧղͯ͠ਐΊΔ͜ͱ͕ॏཁɻࢴʹॻ͍ͯΈͨΓɺ ཧͯ͠ΈͨΓɻ
• ޠֶͱҰॹͰগͣͭ͠ͰຖɺຊಡΜͩΓɺ৮Ε ͨΓ͢Δ͜ͱ͕ਐาʹܨ͕Δɻ
ݸਓతʹ… • ϓϩάϥϛϯάɺࠓޙɺখֶੜͷΧϦΩϡϥϜʹ ೖ͖͕͍ͬͯͯͬͯ͘͜ͱ͕༧͞ΕΔɻجຊ ࣝͷྖҬʹۙ͘ͳ͍ͬͯ͘ͱࢥ͏ɻ • ΞϓϦΛ࡞ͬͨΓɺશੈքʹϦϦʔεͰ͖ͨΓ͢Δ Έ໘ന͍ɻपล͍ࣝΖ͍ΖඞཁͰ͕͢ɺ νϟϨϯδ͢ΔՁ͋Γ·͢ɻ •
ੲ͔Βɺίϯϐϡʔλʔ͕͖ͳਓͱͯ͠ɺίϯ ϐϡʔλʔϓϩάϥϛϯά͕ɺ͖ʹͳͬͯ͘Ε Δਓ͕ҰਓͰ૿͑ͨΒخ͍͠ɻ
ΞϓϦΛϦϦʔε͢Δ্Ͱͷ੍
ΞϓϦΛϦϦʔε͢Δ্Ͱͷ੍ࣄ߲(1) •ϦϦʔεʹ৹͕ࠪ͋Γ·͢ɻ •ΨΠυϥΠϯ •https://developer.apple.com/app-store/review/guidelines/jp/ • ܦݧଇ • ؆୯ͳΞϓϦ৹ࠪʹ௨Βͳ͍͜ͱ͕͋Γ·͢ɻ • SNSͰͷγΣΞػೳΛ͚ΔͳͲɺ͕ඞཁͰ͢ɻ
• ஶ࡞ݖ • ը૾ԻָͳͲΛ༻͢Δ߹ɺݖརʹҙ͢Δඞཁ͕͋Γ·͢ɻ • ΞϓϦͷλΠτϧؚ໊ΊͯؾΛ͚ͭΔඞཁ͕͋Γ·͢ɻ
ΞϓϦΛϦϦʔε͢Δ্Ͱͷ੍ࣄ߲(2) • iOS11͚ʹ࡞Δ߹ɺiOS11͕αϙʔτ͞Ε͍ͯ ΔશͯͰਖ਼ৗʹಈ࡞͢Δඞཁ͕͋Γ·͢ɻ • ྫ͑ɺiPhone5SҎ্Ͱಈ࡞͢Δඞཁ͕͋Γ·͢ɻը໘ αΠζશͯαϙʔτ͞ΕΔඞཁ͕͋Γ·͢ɻ • Apple Developer
Program ͷࢀՃ͕ඞཁͰ͢ɻ • ؒͰɺ1ສԁલޙ͔͔Γ·͕͢ɺϓϩάϥϜͷࢀՃ͕ ඞཁͰ͢ɻ
࡞ΔϓϩάϥϜͷΞΠσΟΞ • ϓϩάϥϜΞΠσΟΞɺϦϦʔεͷཁ݅౿·͑ ͯɺߟ͑ͨ΄͏͕͍͍ͱࢥ͏ɻ • खॻ͖ͰɺΞΠσΟΞΛॻ͍ͯΈͯɺͦͷ͋ͱɺ ը໘ભҠΛ૾ͯ͠Έͯɺ؆୯ͳϑϩʔΛॻ͍ͯɺ ϓϩάϥϜʹམͱͤΔ͔ߟ͑Δͱɺ͏·͍͖͘͢ ͍ɻ •
ΞΠσΟΞͷ࣌Ͱɺܦݧऀʹฉ͘ͷΞϦͩͱ ࢥ͏ɻੋඇɺࠓճͷͳͲΛར༻ͯ͠Լ͍͞ɻ
Xcodeͷॳظઃఆ
XcodeΛىಈ͢Δ • ΞϓϦέʔγϣϯ → Xcode ͱબΜͰىಈ
ઃఆը໘Λબ w 9DPEFˠ1SFGFSFODFTͱબΜͰىಈ
Xcodeͷॳظઃఆ(1) • Accounts Λબ͢Δɻ
Xcodeͷॳظઃఆ(1) • ࠨԼʹ͋ΔʮʴʯΛબ͢Δɻ
Xcodeͷॳظઃఆ(1) • Apple ID Λબ͠ɺContinue Λબ͢Δɻ
Xcodeͷॳظઃఆ(1) • AppleIDͷΞΧϯτΛઃఆ͠ɺSign In Λબ͢Δɻ
Xcodeͷॳظઃఆ(2) •ߦදࣔΛग़͢ Text Editing ͷதͷ Line Number Λબ͢Δɻ
Xcodeͷॳظઃఆ(3) w %PVCMF$MJDL/BWJHBUJPOΛઃఆ͢Δɻ
Hello World Λग़ͯ͠ΈΔ
ϓϩδΣΫτΛ࡞͢Δ • File → New → Project
ΞϓϦͷλΠϓΛબ͢Δ • Single View App → Next Λબ
ϓϩδΣΫτͷඞཁࣄ߲Λઃఆ •ҎԼͷΑ͏ʹهೖͯ͠ɺNext Λબɻ
อઌΛબ • อॴΛઃఆͯ͠ɺʮCreateʯΛબ͢Δɻ
Storyboard Λબ •Xcode͕։͘ͷͰɺStoryboard Λબ
SafeAreaΛબ •Safe Area Λબ͢Δ
Hello World ͷϥϕϧΛஔ͢Δ • Xcode ͷӈԼʹ͋Δը໘ͷը໘Ͱɺʮshow the object libraryʯΛબ •
Filter ʹ Label ͱೖྗ • Label ͕දࣔ͞ΕΔ͜ͱΛ֬ೝ
Hello World ͷϥϕϧΛஔ͢Δ
Hello World ʹจࣈྻΛॻ͖͑Δ
੍Λઃఆ͢Δ
ԼهͷΑ͏ʹͳ͍ͬͯΔ͜ͱΛ֬ೝ
Ϗϧυ࣮ͯ͠ߦͯ͠ΈΔ • iPhoneX ͷγϛϡϨʔλʔΛબΜͰʮ⾣ʯΛબ͢Δɻ
Playground Λىಈ͢Δ
Playground • ༁͢Δͱɺ༡ͼͱ͍͏ҙຯͰɺίʔυͷ࿅श Λ͢Δʹ࠷దͳπʔϧɻ • Swift ͷίʔυΛͪΐͬͱ֬ೝ͍ͨ͠ͱ͍͏࣌ʹ ɺ׆༻͠·͠ΐ͏ɻ
ىಈํ๏ • File → New → Playground
ىಈํ๏ •iOS → Blank → Next ͱબ͢Δɻ
ىಈํ๏ •อॴΛઃఆͯ͠ɺʮCreateʯΛબ
ىಈํ๏ • ҎԼͷΑ͏ʹىಈ͢Δ
Swift ͷओͳॻ͖ํ
มͱఆ • ม • ΛهԱ͢ΔͨΊͷശͷΑ͏ͳͷ • ఆ • ΛهԱ͢ΔശͷΑ͏ͳͷɺ͋ͱ͔ΒมߋͰ͖ͳ͍ มͷܕʹɺओʹɺ
ҎԼͷΑ͏ͳͷ͕͋Δɻ Intܕ Floatܕ Doubleܕ Stringܕ Boolܕ
ܕਪ •ϓϩάϥϜͷจ຺͔Β҉తʹܕΛܾఆͯ͘͠ΕΔ •ܕΛΈ͍ͨͱ͖ɺ type(of: ม໊)
มܕͰؾΛ͚ͭΔϙΠϯτ • ఆͷ࠶ೖͰ͖ͳ͍ • let Λͬͨͷ࠶ೖͰ͖ͳ͍ • ҧ͏ܕͷೖΕΔ͜ͱ͕Ͱ͖ͳ͍
Optional • มͷ͕ɺnil Ͱ͋Δ͜ͱͱɺจࣈྻͷ ”” ɺม ͕ɺ0 Ͱ͋Δ͜ͱҟͳΔɻ • SwiftͰɺOptionalܕͱͯ͠ɺ”?”Λͬͯ໌ࣔ͢Δɻ
• ໌֬ͳཧ༝͕͋Δͱ͖ͷΈ͍·͠ΐ͏ɻ 8 /774 5007 32 2 010 07.2
ྻ •ҎԼͷΑ͏ʹهड़͢Δ •ΛॳظԽ͢Δ߹ɺ[] ͷؒʹΛฒΔ
ؔ •ఆٛํ๏ •ίʔυྫ . ( 1 : 2 ,)-., >
Ϋϥε w ҎԼʹαϯϓϧΛࣔ͢
ܧঝ •ҎԼʹαϯϓϧΛࣔ͠·͢ɻ •class Ϋϥε: εʔύʔΫϥε { } ͷΑ͏ʹهड़͢ Δɻ
·ͱΊ •࣌ؒͷؔͰɺऔΓ্͍͛ͯͳ͍͜ͱ͕ଟ͋Γ·͢ɻ • Switchจ • forจ • whileจ • ߏମ
• είʔϓ • Ψʔυ • ϓϩτίϧ •…ͳͲͳͲ •Swiftͷॻ੶ɺAppleͷυΩϡϝϯτΛੋඇಡΜͰΈͯԼ͍͞ɻ
ΫΠζΞϓϦ
ૉࡐͷμϯϩʔυ • ΫΠζͷͷcsvٴͼɺը૾Λ༻ҙͨ͠ͷͰɺμ ϯϩʔυ͓ئ͍͠·͢ɻ
Xcode Ͱ৽͍͠ϓϩδΣΫτΛ։͘
શମͷྲྀΕͷઆ໌ • ࠓճͷΞϓϦͷશମతͳྲྀΕΛҎԼʹࣔ͠·͢ɻ ? ?
4UPSZ#PBSE
ը໘ͷૉࡐΛొ͢Δ •ը໘ͷૉࡐΛஔ͢Δɻ
ViewControllerͷஔ • StoryBoard Λબͯ͠ɺදࣔ͠ɺViewController Λஔ͢Δɻ
֤ը໘༻ͷίʔυΛ४උ w 'JMFΛબ͠·͢ɻ
֤ը໘༻ͷίʔυΛ४උ w $PDPB5PVDIΛબ͢Δ
w ΫϥεΛࢦఆ͠·͢ɻ2VJ[7JFX$POUSPMMFSͱࢦఆ͢Δɻ ֤ը໘༻ͷίʔυΛ४උ
֤ը໘༻ͷίʔυΛ४උ w ʮ$SFBUFʯΛબ͠·͢ɻ
֤ը໘༻ͷίʔυΛ४උ w ಉ༷ʹɺ3FTVMU7JFX$POUSPMMFSΛ࡞͠·͢ɻ
$VTUPN$MBTTͷࢦఆ w ֤ετʔϦʔϘʔυʹࢦఆ͠·͢ɻ
$VTUPN$MBTTͷࢦఆ w ಉ༷ʹɺ3FTVMU7JFX$POUSPMMFSࢦఆ
෦ஔ
શମਤ
τοϓը໘ w *NBHF7JFXͱ#VUUPOΛஔ͠·͢ɻ
ΫΠζදࣔը໘ w ҎԼஔ͠·͢ɻ w ϥϕϧ͇ w Ϙλϯ͇ w UBHΛઃఆ w
*NBHF7JFXº
݁Ռදࣔը໘ w ҎԼΛஔ͠·͢ɻ w *NBHF7JFX w ϥϕϧ w Ϙλϯ
֤ը໘ͷඥ͚ w ελʔτϘλϯ͔Βɺ 2VJ[7JFX$POUSPMMFS Ή͔ͬͯɺTFHVF Λઃఆ͢Δɻ
ը໘ͱͷඥ͚ w 2VJ[7JFX$POUSPMMFS ͔Βɺ 3FTVMU7JFX$POUSPMMFS ʹ͔ͬͯɺTFHVF Λઃఆ͢Δɻ
ը໘ͱͷඥ͚ w *EFOUJpFSΛఆٛ͢Δ
2VJ[7JFX$POUSPMMFSͷιʔεͱͷඥ͚
2VJ[7JFX$POUSPMMFSͷιʔεͱͷඥ͚
3FTVMU7JFX$POUSPMMFSͷιʔεͱͷඥ͚
ϓϩάϥϛϯά
มΛఆٛ // Λ֨ೲ var csvArray:[String] = [] // औΓग़ͨ͠Λ֨ೲ var
questionArray:[String] = [] // ม var questionCount = 0 // ग़ var correctCount = 0 // ਖ਼ղ // ఆ let total = 3 // ग़ let waitQuestion = 0.8 // දࣔͷִؒ
ΛDTW͔Βྻʹ // CSVϑΝΠϧͷಡΈࠐΈ func loadCSV(filename : String)->[String] { // ฦ٫ͷॳظԽ
var csvStr:[String] = [] // CSVΛಡΈࠐΜͰArrayʹ if let csvPath = Bundle.main.path(forResource: filename, ofType: "csv") { do { var csvData = try String(contentsOfFile: csvPath, ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹencoding: String.Encoding.utf8) csvData = csvData.replacingOccurrences(of: "\n", with: "") csvStr = csvData.components(separatedBy: .newlines) } catch let error as NSError { print(error.localizedDescription) } } return csvStr }
දࣔ // දࣔ func nextProblem() { // questionArrayͷॳظԽ questionArray.removeAll(keepingCapacity: true)
if questionCount < total { // questionArrayʹ৽نΛ֨ೲ questionArray = csvArray[questionCount].components(separatedBy: ",") // දࣔ༰Ληοτ quizNumberLabel.text = "ୈ\(questionCount+1)" quizQuestion.text = questionArray[0] uiButton1.setTitle(questionArray[2], for: .normal) uiButton2.setTitle(questionArray[3], for: .normal) uiButton3.setTitle(questionArray[4], for: .normal) uiButton4.setTitle(questionArray[5], for: .normal) } else { // Λશͯදࣔͨ͠ޙͷॲཧ(ޙͰهड़) } } }
ճΛબͨ͠Βఆ // ਖ਼ޡఆ @IBAction func btnAction(_ sender: UIButton) { //
ਖ਼ղͱϘλϯͷλά൪߸͕ಉ͡ͳΒਖ਼ղ if sender.tag == Int(questionArray[1]) { answerImage.image = UIImage(named: "correct.png") correctCount += 1 } else { answerImage.image = UIImage(named: "incorrect.png") } // ճදࣔͷ༗ޮԽ(0.8ඵؒ) answerImage.isHidden = false DispatchQueue.main.asyncAfter(deadline: .now() + waitQuestion) { self.answerImage.isHidden = true } // ࣍ͷจݺͼग़͠ questionCount += 1 nextProblem() }
ը໘ભҠΛهड़ w 4FRVFΛͬͯΛ͢ͷͰ͢Λఆٛ w ը໘ભҠΛ͢Δ // Segue ͰΛ͢ override func
prepare(for segue: UIStoryboardSegue, sender: Any?) { let sVC: ResultViewController = (segue.destination as? ResultViewController)! sVC.correct = correctCount } // Storyboard Segue ͷ Identifier ΛҾʹఆٛͯ͠ը໘ભҠ DispatchQueue.main.asyncAfter(deadline: .now() + waitQuestion) { self.performSegue(withIdentifier: "toResultViewController", sender: nil) }
2VJ[ͷWJFX%JE-PBEΛهड़ // ը໘දࣔྃޙʹಈ͘ϝιου override func viewDidLoad() { super.viewDidLoad() // ͷಡΈࠐΈ
csvArray = loadCSV(filename: "loveswift") // ը໘ͷॳظԽ answerImage.isHidden = true // දࣔ nextProblem() }
ը໘ΛΔఆٛΛ͢Δ ViewControllerʹҎԼɺه͠·͢ɻ @IBAction func unWindSegue(_ sender: UIStoryboardSegue) { print("topwindow") }
4UPSZCPBSE্ͰΔఆٛΛ͢Δ w VO8JOE4FRVFͱ݁ͼ͚ͭΔ
Ϗϧυ • iPhoneX ͷγϛϡϨʔλʔΛબΜͰʮ⾣ʯΛબ ͢Δɻ
Τϥʔͷ֬ೝํ๏ w ը໘ͷԼ෦ʹҎԼͷ૭Λදࣔͤ͞Δ͜ͱͰɺΤϥʔΛ֬ೝ Ͱ͖·͢ɻ
Ͱ͖·͔ͨ͠
ֶशΛଓ͚͍ͯ͘ʹ
ॻ੶
UFSBUBJM w ࠔͬͨΒɺUFSBUBJMͰฉ͍ͯΈΔɻ w Ͱɺ."/"#*:"ͱ͍͏Πϕϯτ͕͋Δͦ͏Ͱ͢ɻ
ษڧձ • SwiftѪձ • SwiftϏΪφʔζ • AKIBA.swift • ے.swift •
Ikebukuro.swift
ΧϯϑΝϨϯε wUSZ4XJGU wJ04%$
5IBOLZPV