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
1ヶ月でAndroidカメラアプリ開発(2/4)
Search
sakebook
April 04, 2016
Programming
0
1.1k
1ヶ月でAndroidカメラアプリ開発(2/4)
Adobe Creative SDKを使った写真加工アプリの開発のスライドです。全4回。
sakebook
April 04, 2016
Tweet
Share
More Decks by sakebook
See All by sakebook
私とスクラム私とコミュニティ私とOST
sakebook
0
43
目指せKotlin 100%
sakebook
1
2.3k
Make full use of Chrome Custom Tabs
sakebook
3
3.1k
Chrome Custom Tabsを使いこなそう
sakebook
1
2.4k
1ヶ月でAndroidカメラアプリ開発(1/4)
sakebook
1
1.8k
1ヶ月でAndroidカメラアプリ開発(3/4)
sakebook
0
1k
1ヶ月でAndroidカメラアプリ開発(4/4)
sakebook
0
950
Other Decks in Programming
See All in Programming
Jakarta EE meets AI
ivargrimstad
0
530
OnlineTestConf: Test Automation Friend or Foe
maaretp
0
110
初めてDefinitelyTypedにPRを出した話
syumai
0
400
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
330
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
530
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
480
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
290
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.1k
Featured
See All Featured
Fireside Chat
paigeccino
34
3k
How GitHub (no longer) Works
holman
310
140k
GitHub's CSS Performance
jonrohan
1030
460k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Docker and Python
trallard
40
3.1k
What's new in Ruby 2.0
geeforr
343
31k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Become a Pro
speakerdeck
PRO
25
5k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Transcript
̍ϲ݄Ͱ ANDROIDΧϝϥΞϓϦ։ൃ @Trunk ञຊ৳ 2016/3/20
ຊͷྲྀΕ • ϨΠΞτͷجຊࣝ • ActivityͷϥΠϑαΠΫϧ • ΠϕϯτϋϯυϦϯά • Widgetͷঢ়ଶཧ •
(Χϝϥݺͼग़͠) • (ը૾ड͚औΓ) • Aviaryઃఆ
ACTIVITY
ACTIVITY ≒ ը໘ • ActivityUIΛ࣋ͭը໘ʹඞਢ • ը໘xmlͰ࡞Δ • ಈతʹੜ͍ͨ͠ͷίʔυͰఆٛ •
ը໘Λߏ͢Δxml ϨΠΞτͱΟδΣοτͰΓཱͭ
LAYOUT
LAYOUT • WidgetViewΛҰఆͷنଇʹج͖ͮஔ͢Δ ͨΊͷͷ • ҰͭͷxmlʹϨΠΞτෳ͋ͬͯྑ͍ • ͷϨΠΞτඞͣҰͭ
͍͔ͭ͘հ • LinearLayout • ্͔ΒԼɺࠨ͔ΒӈͳͲɺॱংʹ٧Ίͯஔ͢ΔϨΠΞτ • RelativeLayout • ஔͨ͠ଞͷίϯϙʔωϯτͱͷҐஔؔΛఆٛ͠ͳ͕Β ஔ͢ΔϨΠΞτ
• FrameLayout • ࠨ্Λىͱͯ͠ɺࢠཁૉͰ͋Δͱ͖ લ໘ʹදࣔ͞ΕΔϨΠΞτ
XMLͷઃఆ • setContentView(Int id)
• εςʔλεόʔ • ΞΫγϣϯόʔ (πʔϧόʔ) • φϏήʔγϣϯόʔ ϨΠΞτ෦
None
None
WIDGET
WIDGET
ߴසग़ • Button • ϘλϯΛஔ͍ͨ͠ͱ͖ʹ͏ • TextView • ܾΊΒΕͨจࣈΛஔ͍ͨ͠ͱ͖ʹ͏ •
ImageView • ը૾Λද͍ࣔͨ͠ͱ͖ʹ͏
࣮श • ͕ࣗ࡞Γ͍ͨΞϓϦͷϨΠΞτΛߟ͑ ࣮ͯ͠ΈΔ
ϥΠϑαΠΫϧ
ϥΠϑαΠΫϧ • Activityಉ࢜ͷԁͳΓऔΓΛॿ͢Δ • ෳͷActivity • ϥΠϑαΠΫϧ ≒ ঢ়ଶભҠ
None
• onCreate • Activity͕ॳΊͯ ࡞ΒΕͨͱ͖ • onStart • Activity͕Ϣʔβʹ ݟ͑ΔΑ͏ʹͳΔલ
• onResume • Activity͕ දࣔ͞Εͨͱ͖ • onPause • ผͷActivity͕ දࣔ͞ΕΔͱ͖
• onStop • Activity͕ ݟ͑ͳ͘ͳͬͨ࣌ • onRestart • Activity͕ఀࢭͨ͠ޙ ࠶։࢝͞ΕΔલ
• onDestroy • Activity͕ ഁغ͞ΕΔલ • Activity͕ड͚औΔ ࠷ޙͷݺͼग़͠
ৄࡉ • http://dev.classmethod.jp/smartphone/android/ android-tips-21-activity-lifecycle/
ΠϕϯτϋϯυϦϯά
ΠϕϯτϋϯυϦϯά • Πϕϯτ • ϢʔβͷԿ͔͠Βͷߦಈ ෦ͷॲཧͷಛఆͷλΠϛϯά • ΠϕϯτΛదͳλΠϛϯάͰΩϟον͠ దͳॲཧΛߦ͏ɻ
ϘλϯΛΫϦοΫ • ButtonͷWidgetΛઃஔ • Button͕ΫϦοΫ͞Εͨ࣌ʹߦ͏ॲཧΛهड़ • ButtonͷΫϦοΫΠϕϯτΛϋϯυϦϯά
BUTTONͷWIDGETΛઃஔ • xml
BUTTON͕ΫϦοΫ͞Εͨ࣌ ʹߦ͏ॲཧΛهड़ • setOnClickListenerʹ࣮Λͯ͋͛͠Δ • Listener = Interface
࣮ ϋϯυϦϯά
ϋϯυϦϯά + ࣮
࣮? ϋϯυϦϯά
ผΫϥεͰ࣮ • MyCustomClick.class
࣮? ϋϯυϦϯά
ಉ͡ΫϥεͰ࣮ • ࣮͕هड़͞Ε͍ͯΔͷͰthis͕͑Δɻ
࣮͠·͢એݴ
SET_ON_CLICKҎ֎ͷϦεφʔ • setOn̋̋Ͱ༻ҙ͞Ε͍ͯΔɻ • ొ/ղআ͕ඞཁͳͷ add/remove register/unregister ͳͲɺ໋໊نଇͰผͰ͖Δ
࣮श • ͕ࣗ࡞Γ͍ͨΞϓϦͷ͍͔ͭ͘ͷwidgetͰ ΠϕϯτϋϯυϦϯάΛઃఆ͢Δ
WIDGETͷঢ়ଶ
BUTTON͕ΫϦοΫ͞Εͨ࣌ • ͳΜͲΫϦοΫͰ͖Δ • ΫϦοΫͰ͖͔ͨͲ͏͔Θ͔Βͳ͍ • ΫϦοΫՄೳͳঢ়ଶ͔ෆ໌
ͳΜͲΫϦοΫͰ͖Δ • ϝʔϧΛૹΔͳͲɺෳճ͞ΕͯࠔΔͷ ͕͋Δ • View#setEnabled(boolean) • Viewͷঢ়ଶΛɺ༗ޮ/ແޮʹ͢Δ
ΫϦοΫͰ͖͔ͨͲ͏͔ Θ͔Βͳ͍ ΫϦοΫՄೳͳঢ়ଶ͔ෆ໌ • ϢʔβʹϑΟʔυόοΫΛ༩͑Δ
ແޮͳঢ়ଶ ༗ޮͰ ԡ͞Ε͍ͯΔঢ়ଶ ༗ޮͰ ԡ͞Εͯͳ͍ঢ়ଶ
AVIARY
AVIARY • ΤσΟλʔػೳผSDK • https://creativesdk.adobe.com/docs/android/ #/articles/imageediting/index.html • Ұॹʹ͍͖ͬͯ·͠ΐ͏ɻ