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
Xcode6のFramework Templateについて
Search
haranicle
October 31, 2014
Technology
2.7k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Xcode6のFramework Templateについて
haranicle
October 31, 2014
More Decks by haranicle
See All by haranicle
戦略的手抜きをするためのデザインシステム運用
haranicle
1
3.8k
bitFlyer ウォレット リニューアルの裏側
haranicle
0
190
多次元宇宙と画面遷移
haranicle
0
440
ハッピーな開発チームを築くために iOSエンジニアがしたこと
haranicle
5
15k
Playground芸
haranicle
6
2k
I💖Xcode Plugins
haranicle
0
170
Apple WatchのGlanceについて
haranicle
3
2.8k
iOS8の Custom Keyboard について
haranicle
2
1.4k
Other Decks in Technology
See All in Technology
ハーレムエンジニアリング
kazuma777777
0
180
案件に一番詳しいAIを Amazon Bedrock AgentCore で作る ― 知見が知見を生むチームへ / Compounding Knowledge with AgentCore
yusukeshimizu
1
150
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
250
SO-101×VLAによる3色キューブのピック&プレース
abeja
0
220
トークンマネジメントでAIにとって働きやすい環境を実現する
hikaruegashira
0
110
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
280
Adding Right-to-Left support to your web application with CSS logical properties — Lessons from Redmine
vividtone
0
130
Model Studio CLI × Token Plan
maigo999
0
190
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
540
2026-08-15 JAWS-UG 茨城 #16 Secrets ManagerにおけるSecret値の管理(Terraformの場合) / Secrets Manager Secrets
masasuzu
0
300
LanceDB入門
mocobeta
9
600
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
280
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
800
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
800
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
440
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
470
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
370
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
340
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Transcript
9DPEFͷ 'SBNFXPSL 5FNQMBUF ʹ͍ͭͯ !IBSBOJDMF
αϯϓϧίʔυ w IUUQTHJUIVCDPNIBSBOJDMF 4VTIJ,JU4BNQMF w IUUQTHJUIVCDPNIBSBOJDMF 4VTIJ.BOJBY
ࣗݾհ w !IBSBOJDMF w J04ΞϓϦ։ൃ ٕज़ࢧԉ w ͨ·ʹαʔόαΠυ (SBJMT
w ͱ͖Ͳ͖"OESPJE ಛघจࣈ ແྉҐ ϕετ৽ண"QQ 23ίʔυ Ϧʔμʔ ͑ελϯϓ ͨΧϝϥ
એ ಛघจࣈΩʔϘʔυ J04ͷػछґଘจࣈΛ ऩͨ͠ ΩʔϘʔυΞϓϦ ͥΜͥΜചΕͳ͍͔Β ࠓ͚ͩແྉʹͨ͠Αʂ "QQ4UPSFͰ ʮIBSBOJDMFʯͰݕࡧ
એ w IUUQZIJPTDPOOQBTTDPNFWFOU
ΞδΣϯμ ✴'SBNFXPSLͱ ✴'SBNFXPSL5FNQMBUFͱ ✴'SBNFXPSL5FNQMBUF1SPKFDU ✴6OJWFSTBM'SBNFXPSLͷ࡞Γํ ✴&NCFEEFE'SBNFXPSL ✴ ͓·͚ -JWF3FOEFSJOH
'SBNFXPSLͱ w ҎԼΛύοέʔδϯά͠ɺͭʹ·ͱΊͨ ✴ϥΠϒϥϦ ✴TUPSZCPBSEϑΝΠϧ ✴OJCϑΝΠϧ ✴ը૾ϑΝΠϧ ✴ϩʔΧϥΠζϑΝΠϧ ✴ϔομϑΝΠϧ ✴υΩϡϝϯτ
w IPHFGSBNFXPSLϑΝΠϧʹͳΔ
'SBNFXPSL5FNQMBUFͱ w 9DPEF͔ΒՃ͞ΕͨJ04༻ͷ w ϓϩδΣΫτςϯϓϨʔτ w ͜ΕΛ͑؆୯ʹJ04༻ͷ'SBNFXPSL͕ ࡞ΕΔͣ
'SBNFXPSL5FNQMBUF1SPKFDU w ίʔσΟϯά͢Δલʹʜ ͜͜Λ/Pʹ͢Δ
'SBNFXPSL5FNQMBUF1SPKFDU w ίʔσΟϯάͨ͠ޙͰʜ ެ։͍ͨ͠ϔομΛ 1VCMJDʹೖΕΔ w 'SBNFXPSL໊Iʹ w JNQPSU'SBNFXPSL໊ެ։͍ͨ͠Ϋϥε໊I w
Λه ͋ͱϏϧυ͢Δ͚ͩͰ'SBNFXPSL ࡞ͬͨͭ
'SBNFXPSL5FNQMBUF1SPKFDU w ҎԼʹ'SBNFXPSLϑΝΠϧ͕ग़ྗ͞ΕΔ w 6TFSTϢʔβ໊-JCSBSZ%FWFMPQFS9DPEF %FSJWFE%BUBϓϩδΣΫτݻ༗ͷϥϯμϜͳจ ࣈྻ#VJME1SPEVDUT w ͷԼʹʜ w
%FCVHJQIPOFPT4VTIJ,JUGSBNFXPSL w %FCVHJQIPOFTJNVMBUPS4VTIJ,JUGSBNFXPSL w γϛϡ༻ͱ࣮ػ༻ͷGSBNFXPSLϑΝΠϧ͕ w ผʑʹͰ͖ͪΌ͏ʂ ࣮ػ༻ʹϏϧυͨ࣌͠ γϛϡ༻ʹϏϧυͨ࣌͠
6OJWFSTBM'SBNFXPSL w γϛϡͱ࣮ػͰ$16ͷΞʔΩςΫνϟ͕ ҟͳΔͷͰɺͦΕͧΕʹରԠͨ͠ 'SBNFXPSLϑΝΠϧ͕Ͱ͖ͨ w Ͱɺͭͷ'SBNFXPSLϑΝΠϧͰͲͬͪ Ͱ͑ΔΑ͏ʹ͍ͨ͠ w MJQPίϚϯυͰγϛϡ༻ͱ࣮ػ༻ͷ
'SBNFXPSLΛͭʹ·ͱΊΒΕΔΑʂ ͲͬͪͰ͑Δ'SBNFXPSL 6OJWFSTBM'SBNFXPSLͱݺΕΔ
w ࣮ػ༻ͱγϛϡ༻ͦΕͧΕʹ9DPEFͰϏϧ υͨ͠ޙʹ w 6TFSTϢʔβ໊-JCSBSZ%FWFMPQFS 9DPEF%FSJWFE%BUBϓϩδΣΫτݻ༗ͷ ϥϯμϜͳจࣈྻ#VJME1SPEVDUT w ԼͰԼهεΫϦϓτΛ࣮ߦ͢Δͱ 6OJWFSTBM'SBNFXPSLΛ࡞Ͱ͖Δ
#!/bin/sh FrameworkName="SushiKit" rm -rf ./Debug mkdir ./Debug cp -r ./Debug-iphoneos/${FrameworkName}.framework ./Debug/${FrameworkName}.framework lipo -create ./Debug-iphoneos/${FrameworkName}.framework/${FrameworkName} ./Debug- iphonesimulator/${FrameworkName}.framework/${FrameworkName} -output ./Debug/$ {FrameworkName}.framework/${FrameworkName} MJQPίϚϯυ IUUQTHJTUHJUIVCDPNIBSBOJDMF FEFBFEBF
'SBNFXPSLͷΈࠐΈํ w ͍͍ͨΫϥεͷϔομͰJNQPSU w ྫ !JNQPSU4VTIJ,JU w ࣮ϑΝΠϧͰී௨ʹ͑Δ w ྫ
<4VTIJ#VUUPOOFX> ࡞ͬͨ6OJWFSTBM 'SBNFXPSLͷϑΝΠϧΛ 'JOEFS͔Β͜͜ʹ%%
&NCFEEFE'SBNFXPSL w ϓϩδΣΫτʹλʔήοτͱͯ͠ w 'SBNFXPSLΛՃ͢Δ͜ͱͰ͖Δ w Ϗϧυ࣌ʹΞϓϦʹόϯυϧ͞ΕΔ w ΞϓϦͱҰॹʹ'SBNFXPSLಈ࡞ڥ w
γϛϡPS࣮ػ ʹ߹ͬͨܗͰϏϧυͯ͠ ͘ΕΔ w
&NCFEEFE'SBNFXPSL w ΞϓϦͰ ෳϓϩδΣΫτͰڞ༗Ͱ͖ͳ͍ 'SBNFXPSL࡞ͬͯخ͍͠ͷ w ಉ͡ϓϩδΣΫτʹෳݸͷϓϩμΫτ ͷλʔήοτ͕͋Δͱ͖ʹ༗༻
w ͭ·Γʜ"QQ&YUFOTJPO $POUBJOJOH"QQͷλʔήοτ "QQ&YUFOTJPOͷλʔήοτ &NCFEEFE'SBNFXPSLͷλʔήοτ YDPEFQSPK ༻
&NCFEEFE'SBNFXPSLͷ࡞Γํ w ϓϩδΣΫτΛ࡞ͨ͠ޙʹ w 'JMF/FX5BSHFUʜ w $PDPB5PVDI'SBNFXPSL5FNQMBUF w "QQ&YUFOTJPOͰϥΠϒϥϦΛ࡞Γ͍ͨ ߹-JOLFE'SBNFXPSLTBOE-JCSBSJFT
ʹՃ
&NCFEEFE'SBNFXPSLͷ࡞Γํ w ίʔσΟϯάͨ͠ޙͰʜ ެ։͍ͨ͠ϔομΛ 1VCMJDʹೖΕΔ w 'SBNFXPSL໊Iʹ w JNQPSU'SBNFXPSL໊ެ։͍ͨ͠Ϋϥε໊I w
Λه ͋ͱϏϧυ͢Δ͚ͩͰ͍͍ײ͡ʹಈ͘
͓·͚
-JWF3FOEFSJOH w ΧελϜͳ7JFXΛ4UPSZCPBSEͰ w -JWF3FOEFSJOHͰ͖ΔΑ͏ʹͳͬͨʂʂ w ΧελϜͳ7JFXͷίʔυΛ'SBNFXPSL ʹؚΊͳ͍ͱͰ͖ͳ͍ͱࢥ͚ͬͯͨͲɺ ผʹ'SBNFXPSLʹؚΊͳͯ͘ಈ͘Αʂ w
ؚΊͯಈ͘Αʂ
-JWF3FOEFSJOH %FNP
4VTIJ#VUUPOI #import <UIKit/UIKit.h> IB_DESIGNABLE @interface SushiButton : UIButton @property(nonatomic) IBInspectable
CGFloat borderWidth; @property(nonatomic) IBInspectable UIColor* borderColor; @property(nonatomic) IBInspectable CGFloat cornerRadius; @property(nonatomic) IBInspectable UIColor* ellipseColor; @end -JWF3FOEFSJOH͍ͨ͠ Ϋϥεʹ͚ͭΔ -JWF3FOEFSJOH͍ͨ͠ ϓϩύςΟʹ͚ͭΔ
4VTIJ#VUUPON - (void)setBorderWidth:(CGFloat)borderWidth { self.layer.borderWidth = borderWidth; } // தུ
- (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); // ӨΛඳը CGContextSetFillColor(context,CGColorGetComponents(self.ellips eColor.CGColor)); NSInteger padding = 20; CGRect frame = self.bounds; frame.origin = CGPointMake(padding, frame.size.height * 0.7); frame.size = CGSizeMake(frame.size.width - padding * 2, frame.size.height * 0.2); CGContextFillEllipseInRect(context, frame); }
࣮ߦ݁Ռ -JWF3FOEFSJOHͷ ݁Ռͷͱ͓Γ࣮ߦ͞ΕΔ 'SBNFXPSLʹؚΊΔͱ $POUBJOJOH"QQͱ "QQ&YUFOTJPOͰಉ͡ ίʔυΛ͍ճͤΔ 'SBNFXPSLʹؚΊΔͱ $POUBJOJOH"QQͱ "QQ&YUFOTJPOͰಉ͡
ίʔυΛ͍ճͤΔ
·ͱΊ
✴9DPEF͔ΒJ04༻ͷ'SBNFXPSL 5FNQMBUF͕Ճ͞Εͯ؆୯ʹ'SBNFXPSL ͕࡞Ͱ͖ΔΑ͏ʹͳͬͨ ✴'SBNFXPSL5FNQMBUF1SPKFDUͰ 6OJWFSTBM'SBNFXPSLΛͭ͘Δͷେม ͚ͩͲͰ͖ͳ͘ͳ͍ ✴&NCFEEFE'SBNFXPSLΛ͑ɺ ҟͳΔλʔήοτؒͰίʔυΛڞ༗Ͱ͖Δ ✴ΧελϜͳ7JFXΛ4UPSZCPBSEͰ -JWF3FOEFSJOHͰ͖Δ
✴ಛघจࣈΩʔϘʔυΑΖ͘͠ʂ