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
ふりかえり研修2025
pokotyamu
0
1.2k
SkimaTalk Introduction for Students
skimatalk
0
390
諸外国の理科カリキュラムにおけるビッグアイデアの構造比較
arumakan
0
330
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
signer
PRO
0
2k
Webリテラシー基礎
takenawa
0
6.7k
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019538FNR)
signer
PRO
1
2k
AIの時代こそ、考える知的学習術
yum3
2
170
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019538FNR)
signer
PRO
1
2.1k
技術文章を書くための執筆技術と実践法(パラグラフライティング)
hisashiishihara
18
6.5k
Are puppies a ranking factor?
jonoalderson
0
870
サンキッズゾーン 春日井駅前 ご案内
sanyohomes
0
400
著作権と授業に関する出前講習会/dme-2025-05-01
gnutar
0
200
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
The Cult of Friendly URLs
andyhume
79
6.5k
Site-Speed That Sticks
csswizardry
10
690
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Designing for humans not robots
tammielis
253
25k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Documentation Writing (for coders)
carmenintech
72
4.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
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ϒϩά࿈ࡌ࢝Ί·ͨ͠ʂ