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
Swiftで作るiOSアプリ開発入門_06
Search
jollyjoester
March 12, 2016
Education
0
100
Swiftで作るiOSアプリ開発入門_06
Schoo講義資料
jollyjoester
March 12, 2016
Tweet
Share
More Decks by jollyjoester
See All by jollyjoester
市民のためのセキュリティ講座
jollyjoester
0
28
コミュニティMTG in WWDC24
jollyjoester
0
290
BengaluruでLTしてきた
jollyjoester
0
330
try! Swift Tokyo 2024
jollyjoester
0
320
エンジニアが直接会う場の価値について
jollyjoester
8
4.3k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
350
My favorite sessions in WWDC 23
jollyjoester
0
640
みんなでAIと戯れよう
jollyjoester
0
150
続く勉強会の作り方
jollyjoester
2
860
Other Decks in Education
See All in Education
Are puppies a ranking factor?
jonoalderson
0
870
演習問題
takenawa
0
6.7k
ThingLink
matleenalaakso
28
4.1k
America and the World
oripsolob
0
510
万博非公式マップとFOSS4G
barsaka2
0
340
2025年度春学期 統計学 第4回 データを「分布」で見る (2025. 5. 1)
akiraasano
PRO
0
110
新卒交流ワークショップ
pokotyamu
0
440
AIの時代こそ、考える知的学習術
yum3
2
170
生成AI
takenawa
0
6.7k
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
signer
PRO
1
2.1k
技術文章を書くための執筆技術と実践法(パラグラフライティング)
hisashiishihara
18
6.5k
(キラキラ)人事教育担当のつらみ~教育担当として知っておくポイント~
masakiokuda
0
110
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Thoughts on Productivity
jonyablonski
69
4.7k
Gamification - CAS2011
davidbonilla
81
5.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
How GitHub (no longer) Works
holman
314
140k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
A Modern Web Designer's Workflow
chriscoyier
695
190k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
SwiftͰ࡞Δ iOSΞϓϦ։ൃೖ 6ݶɿΞϓϦͷݟͨΛߏ͢ΔViewͷཧղ 1
ࣗݾհ ࣣౡҒ೭ʢͳͳ͠·ͻͰΏ͖ʣ Reproגࣜձࣾ iPhoneΞϓϦ։ൃ͕͖ 2
ࣗݾհ 3 https://repro.io
ຊίʔεͷඪ ۤΛΓӽ͑ͯ ָ͘͠ΞϓϦ։ൃͰ͖ΔΑ͏ʹͳΔʂ 4
෭ڭࡐ վగ൛ No.1εΫʔϧߨࢣਞʹΑΔ ੈքҰड͚͍ͨ iPhoneΞϓϦ։ൃͷतۀ (ٕज़ධࣾ) 5
ࠓճͷतۀͷඪ ViewΛֶΜͰࣗͷࢥ͍ඳ͘ ΞϓϦͷݟͨΛ࡞ΕΔΑ͏ʹ͢Δ 6
तۀͷલఏ݅ • ͓खݩͷMacʹXcode(version7.0Ҏ্)͕Πϯετʔ ϧ͞Ε͍ͯΔ͜ͱ • લճͷ͍ΞϓϦϓϩδΣΫτ͕͋ΔͱΑΓ༗ޮʹ ֶशͰ͖·͢ɻϓϩδΣΫτԼه͔Βμϯϩʔ υͰ͖·͢ɻ https://github.com/jollyjoester/Schoo-iOS-App- Development-Basic/archive/05.zip
7
ຊͷϝχϡʔ • ViewͱԿ͔ΛֶͿ • ViewͷߏΛֶͿ • ΞχϝʔγϣϯͰಈ͖ΛՃ͑Δ 8
ͦͷલʹલճͷ࣭͝ ʢ؆୯ͳ͍ΞϓϦͷاը͔Β։ൃ·ͰΛମݧʣ • teratailͰ࣭͢Δͷ༗ྉձһͱ͔ʹͳΔඞཁ͕͋Δͷ ͔ͳɻ from Kenichi Gotoh͞Μ ‣ ແྉͰ͢ʂ
https://teratail.com/ 9
ͦͷલʹલճͷ࣭͝ ʢ؆୯ͳ͍ΞϓϦͷاը͔Β։ൃ·ͰΛମݧʣ • ΞϚκϯͰߪೖ͠Α͏ͱࢥ͍ɺઌੜͷຊΛݕࡧͨ͠ͱ͜ΖɺϨ Ϗϡʔʹʮಛʹ8ষͰΘΕΔJSONσʔλΛղੳ͢Δπʔϧ ͕ɺ࣮ػςετͰக໋తͳΤϥʔΛు͖·͢ɻษڧʹͳΓ ·͕͢ɺApp StoreͰͷϦϦʔεΛࢦ͢ํɺຊॻΛߪೖ͠ ͳ͍΄͏͕ྑ͍Ͱ͠ΐ͏ɻʯͱͳ͍ͬͯͯߪೖΛ᪳ͯ͠͠· ͍·ͨ͠ɻ͜ͷղܾ͞Ε͍ͯΔͷͰ͠ΐ͏͔ʁ
from ϛϢ͞Μ ‣ ͓Βͤ͋Γ͕ͱ͏͍͟͝·͢ʂϥΠϒϥϦͷಋೖखॱʹ ෆ͕͋Γ·ͨ͠ɻ࣍ͷઃఆΛ͢Ε࣮ػͰ࣮ߦͰ͖· ͢ɻʢαϙʔταΠτͷܝࡌग़൛ࣾʹ͓ئ͍ͯ͠Έ·͢ʣ 10
ͦͷલʹલճͷ࣭͝ ʢ؆୯ͳ͍ΞϓϦͷاը͔Β։ൃ·ͰΛମݧʣ 11
ͦͷલʹલճͷ࣭͝ ʢ؆୯ͳ͍ΞϓϦͷاը͔Β։ൃ·ͰΛମݧʣ 12
ͦͷલʹલճͷ࣭͝ ʢ؆୯ͳ͍ΞϓϦͷاը͔Β։ൃ·ͰΛମݧʣ 13 • ॎɾԣ ผʑͷϨΠΞτͬͯ ग़དྷͳ͍ͷ͔ͳʁ from dig sum͞Μ
‣ SizeClassesΛͬͯͰ͖·͢ʂ
Έͳ͞·࣭͋Γ·ͨ͠Βͥͻ࣭͍ͩ͘͝͞ɻ तۀதʹऔΓ্͛ΒΕͳͯ͘ ग़དྷΔݶΓ͓͑͠·͢ʂ ͳΔ΄ͲʂͱࢥͬͨΒʮͳΔ΄ͲʯϘλϯΛ ԡ͍͚ͯͨͩ͠ΔͱྭΈʹͳΓ·͢(`ŋωŋ´) 14
ViewͱԿ͔ΛֶͿ 15
Viewͱ • ը໘Λදࣔ͢ΔͨΊͷͷ • UILabel, UIButtonͳͲ • λοϓͳͲͷΞΫγϣϯΛड͚औΔׂ 16
Viewͷछྨ ʢԿ͔Λදࣔ͢ΔͨΊͷViewʣ 17 ໊લ Ϋϥε໊ ׂ Ϗϡʔ UIView ͬͱجຊͷ෦ ϥϕϧ
UILabel จࣈΛදࣔ͢Δ ςΩετϏϡʔ UITextView จࣈͷදࣔͱฤूΛ͢Δ ΠϝʔδϏϡʔ UIImageView ը૾Λදࣔ͢Δ ϐοΧʔϏϡʔ UIPickerView બࢶͷදࣔͱબΛ͢Δ ΣϒϏϡʔ UIWebView ΣϒϖʔδΛදࣔ͢Δ
Viewͷछྨ ʢϢʔβʔ͔ΒͷΞΫγϣϯΛड͚औΔͷViewʣ 18 ໊લ Ϋϥε໊ ׂ Ϙλϯ UIButton Ϙλϯ ςΩετϑΟʔϧυ
UITextField จࣈΛೖྗ͢Δ εΠον UISwitch ΦϯͱΦϑΛ͢ΔεΠον ηάϝϯςου ίϯτϩʔϧ UISegmented Control ηάϝϯτΛબ͢Δ εςούʔ UIStepper Λ૿ͨ͠ΓݮΒͨ͠Γ͢Δ εϥΠμʔ UISlider εϥΠμʔͰΛબ
ʢ༨ஊʣUIxxxͬͯʁ • AppleͷframeworkͷΫϥε໊ʢ෦ʣʹ prefix͕͍͍ͭͯΔ ‣ CoreLocation -> CLLocationManager ‣ AVFoundation
-> AVCaptureDeviceInput ‣ UIKit -> UILabel, UIButton 19
ɹUIView • ࢛͍֯ྖҬΛද͢࠷جຊతͳView • ViewͷதʹViewΛؚΉ͜ͱ͕Ͱ͖Δ ʢContainerͱ͔ݴͬͨΓ͢Δʣ • ؚΉํͷViewSuper View ؚ·ΕΔํSub
Viewͱ͍͏ 20
ɹUIView 21
ɹUIView 22
ɹUIView 23
ɹUILabel 24 • จࣈΛදࣔ͢ΔͨΊͷView
ɹUILabel 25
UIImageView 26 • ը૾Λදࣔ͢ΔͨΊͷView
UIImageView 27
ɹUIButton 28 • ϘλϯʢλοϓΛݕ͢Δʣ
ɹUIButton 29
ɹUITextView 30
UIPickerView 31
UITextField 32
UISwitch 33 UISegmented Control UIStepper UISlider
ViewͷߏΛΔ 34
ViewͷߏΛΔ ViewͷதʹViewΛஔͯ͠ ͞ΒʹLabelΛஔͯ͠ΈΔ 35
ViewͷߏΛΔ ʢDebug View Hierarchyʣ 36
ViewͷߏΛΔ ʢDebug View Hierarchyʣ 37
ViewͷߏΛΔ ʢDocument Outlineʣ 38
ViewͷߏΛΔ ʢDocument Outlineʣ 39
ViewͷߏΛΔ ʢDocument Outlineʣ 40
ViewͷߏΛΔ ʢDocument Outlineʣ 41
ViewͷߏΛΔ ʢDocument Outlineʣ 42
ViewͷߏΛΔ ʢDocument Outlineʣ 43
ViewͷߏΛΔ ʢDocument Outlineʣ 44
ΞχϝʔγϣϯͰಈ͖ΛՃ͑Δ 45
Ξχϝʔγϣϯ ʢ·࣮ͣફ͔Βʣ • AnimalFortuneTellingϓϩδΣΫτΛ։͘ https://github.com/jollyjoester/Schoo-iOS- App-Development-Basic/archive/05.zip • ViewController.swiftΛબ 46
Ξχϝʔγϣϯ ʢϩδοΫΛϝιουʹΓग़͠ʣ 47
Ξχϝʔγϣϯ ʢanimateWithDurationʣ 48 • ·ͣԼهͷ௨Γॻ͍࣮ͯߦͯ͠ΈΔ ͍͠จ๏͕ΘΕ͍ͯΔͷͰ ·ͣߟ͑ͣʹ͓֮͑ͯ͏ʂ
Ξχϝʔγϣϯ ʢdurationʣ 49 • Ͳͷ͘Β͍ͷ࣌ؒΛ͔͚ͯΞχϝʔγϣϯΛ͢Δ͔ 1.0ඵ͔͚ؒͯΞχϝʔγϣϯΛߦ͏
Ξχϝʔγϣϯ ʢanimationsʣ 50 • Ξχϝʔγϣϯͷ݁ՌͲͷΑ͏ʹͳΔ͔ animalLabelΛ0.2ഒͷେ͖͞ʹ͢Δ
Ξχϝʔγϣϯ ʢcompletionʣ 51 • Ξχϝʔγϣϯ͕ऴΘͬͨޙʹ͢Δॲཧ ݩʹͯ͠changeLabelϝιουΛ࣮ߦ͢Δ
Ξχϝʔγϣϯ ʢresultLabelʣ 52 ΞχϝʔγϣϯதresultLabelফ͢ ݁Ռ͕ग़ͨΒදࣔ͢Δ
Ξχϝʔγϣϯ ʢanimalLabelʣ 53 animalLabelΛͩΜͩΜಁ໌ʹ͢Δ
54 ʂ
Ξχϝʔγϣϯͷछྨ 55
Ξχϝʔγϣϯ ʢ݁ՌΛৼಈͤ͞Δʣ 56 10pxҠಈͷΞχϝʔγϣϯΛ̑ճ܁Γฦ͢
ຊͷ͓͞Β͍ • Viewͷछྨ͝ͱͷ͍ํΛ֮͑Α͏ • ཱମతʹViewͷߏΛΠϝʔδͰ͖Δͱ٢ • animationΛָ͍ͬͯ͠ΞϓϦʹ͠Α͏ʂ 57
ࠂ 58 http://eventdots.jp/event/582698 ݄࣍̏̎̕ʂ
ࠂ 59 http://liginc.co.jp/series/spaceapps LIGϒϩά࿈ࡌ࢝Ί·ͨ͠ʂ