11 Mar 2018
|
UIColor
colorLiteral
iOS
textcolor
textColor ํ๋กํผํฐ
iOS๊ฐ๋ฐ์์, UILabelํด๋์ค์ textColor์์ฑ์ ์ ์ธ์ ์ด๋ ๋ค.
var textColor: UIColor! { get set }
์ด๋ฌํ textColor์์ฑ์ ์ฌ์ฉํ ๋ ๊ฐ์ฅ ๊ฐํธํ ๋ฐฉ๋ฒ์ ์ ํ์์ ์ ๊ณตํ๋ ๋ฏธ๋ฆฌ ์ ํด๋์ UIColorํด๋์ค์ ํ์
ํ๋กํผํฐ๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค. ์๋ฅผ๋ค์ด, ํ๋ฉด์ ๋ณด์ฌ์ง๋ ํ
์คํธ ์์ ์ด๋ก์์ผ๋ก ํ๊ณ ์ถ๋ค๋ฉด, ์๋์ ๊ฐ์ด ์ธ ์ ์๋ค.
class FirstViewController: UIViewController {
@IBOutlet weak var photoLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
self.photoLabel.text = "JINiOS"
self.photoLabel.textColor = UIColor.green
}
์ด๋ ๊ฒ ์ ํ์ ๊ธฐ๋ณธ์ ์ธ ์๊น๋ค์ ์ด๋ฏธ literalํ๊ฒ ๋ง๋ค์ด๋์๋ค.
ํ์ง๋ง ์ปค์คํ
๋ ๋ค๋ฅธ ์์ ์ฌ์ฉํ๊ณ ์ถ๋ค๋ฉด!? ์ฝ๋๋ก ํ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง ์ด๋ฒ์ ๊ฐ๋จํ๊ฒ GUI์ ๋์์ ๋ฐ์ ์๊น์ ์ปค์คํ
ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ดค๋ค.
Custom Color Literal์ฌ์ฉํ๊ธฐ
- ๋จผ์ ๋ณ์๋ฅผ ์ ์ธํ๊ณ ,
Color Literal
์ด๋ผ๊ณ ์จ์ค๋ค. xcode๋ ์๋์ ๊ฐ์ด ๋๋กญ๋ค์ด์ผ๋ก Color Literal
์ ๋ณด์ฌ์ค๋ค.
Color Literal
์ ์ ํํ๋ฉด ์ปฌ๋ฌ๋ฅผ ์ ํํ ์ ์๋ ์ฐฝ์ด ๋จ๊ณ , others ๋ฒํผ์ ํด๋ฆญํด์ ์ง์ ์์๊ณผ ํฌ๋ช
๋๋ฅผ ์ ํํ๊ณ ๋ณ์ ์ ์ธ์ ์๋ฃํ๋ค.
- ์ ์ธ๋ ๋ณ์๋ ์๋์ ๊ฐ์ด ์ฌ์ฉํ๋ค.
@IBOutlet weak var firstDescription: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
self.firstDescription.text = "์ฌ์ง์ก์ firstDescription"
let colorLiteral = #colorLiteral(red: 0.1380051349, green: 0.3703911386, blue: 1, alpha: 0.7430436644)
self.firstDescription.textColor = colorLiteral
}
// colorLiteral๋ณ์๊ฐ ์ฝ๋๋ธ๋ญ์ผ๋ก ๋ถ์ฌ๋ฃ์ผ๋ฉด์ rgb๊ฐ์ด ์ซ์๋ก ๋์์
์ค์ ๋ก๋ colorLiteral
๋ณ์๋ ์ฝ๋์ ์ค์ ๋ ์๊น๊ณผ ํจ๊ป ๋ณด์ฌ์ง๊ฒ๋๋ค.
09 Mar 2018
|
iOS
UITabBarController
UITabBar
UITabBarController & UITabBar
์ผ๋ฐ์ ์ธ ๊ด์ ์์์ View๊ณผ Controller์ ๋ํ ์ค๋ช
์ ์๋์ ๊ฐ๋ค.
- View : ์ฌ์ฉ์์ ์
๋ ฅ์ ๋ฐ๊ณ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ฃผ๋ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ๋ณด์ฌ์ค์ผํ๋์ง ๊ด๋ฆฌํ๋ ๊ฐ์ฒด
- Controller : ์ฌ์ฉ์์ ์
๋ ฅ์ ์ด๋ป๊ฒ ์ฒ๋ฆฌํด์ผ ํ๋์ง ์๊ณ ์ฌ์ฉ์์๊ฒ ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ค์ผํ๋์ง ๊ด๋ฆฌํ๋ ๊ฐ์ฒด
์ด๋ฐ ๊ด์ ์ผ๋ก ์ ๊ทผํ๋ค๋ฉด,
- UITabBar๋ View์ ๊ฐ๊น์ด ๊ฐ๋
์ผ๋ก, UITabBar๋ ์ฌ์ฉ์์๊ฒ ํญ์ ์ด๋ป๊ฒ ๋ณด์ฌ์ค์ผํ๋์ง์๋ํ ์ฑ
์์ด ์๋ ๊ฐ์ฒด
- UITabBarController๋ Controller์ ๊ฐ๊น์ด ๊ฐ๋
์ผ๋ก, ์ฌ์ฉ์๊ฐ ํน์ ํ ํญ์ ์ ํํ์๋ ์ด๋ค ํญ์ด ๋ณด์ฌ์ ธ์ผํ๋์ง์๋ํ ์ฑ
์์ด ์๋ ๊ฐ์ฒด๋ผ๊ณ ์๊ฐํ๋ค. ๊ณ ์๊ฐํ๋ค. ์ด๋ฐ ๊ด์ ์์ ๋ณด๋ฉด UITabBarController์ UITabBar๋ ์/ํ์ ๋ชจ๋ ๊ด๊ณ ๋ผ๊ณ ๋ณผ ์๋ ์๋ค๊ณ ์๊ฐํ๋ค.
๋ค๋ง, ๋ณดํต UITabBar๋ UITabBarController์ ๊ฒฐํฉํด์ ์ฐ์ด์ง๋ง, UITabBar ๋จ์ผํ๊ฒ ์์ฒด๋ง์ผ๋ก๋ ์ฐ์ผ ์๋ ์๊ธฐ๋๋ฌธ์ ์๋์ ๊ฐ์ ํน์ง์ด ๊ณตํต์ ์ด๋ผ๊ณ ๋งํ ์ ์๋ค. (TabBar์ ๋ํ ์ผ๋ฐ์ ์ธ ์ค๋ช
)
- ์ฌ์ฉ์๊ฐ ๋ทฐ ์ปจํธ๋กค๋ฌ๋ค ๊ฐ์ ์ ํํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํจ
- ํน์ ํญ์ ๋๋ฅด๋ฉด, ๊ทธ ํญ์ ์ฐ๊ฒฐ๋ ๋ทฐ ์ปจํธ๋กค๋ฌ์ ๋ทฐ๊ฐ ๋ํ๋๋ค.
์ฐธ๊ณ ๋งํฌ
05 Mar 2018
|
TIL
2018.03.05
- ์ํ๊ธฐ ๋ฏธ์
๋ง๋ฌด๋ฆฌ
- enum์ผ๋ก ์๋ฃ์ ์ํ ๋ฒํธ ์ฐ๊ฒฐํ๋ ๊ฒ ์ง๋ฌธ
- ์๋ฃ ์์ฑ(์นผ๋ก๋ฆฌ,์ฉ๊ธฐ ๋ฑ) : Attribute ํ๋กํ ์ฝ๋ก ์์ฑ์ ๋ฌถ์ด์ ํํํ๋๋ฐ Beverage๊ฐ ์์ฑ์ ๊ฐ์ง๊ณ ์๊ณ ์์๋ฐ๋ ๊ตฌ์กฐ๊ฐ ์ข์์ง
- ์์์ด ๋ ์๋ฏธ์ ๋ง๋๊ฑฐ๊ฐ์! (init์์ ๋ฃ์ง ์์)
- ๊ทธ๋ฅ ์์์ผ๋กํ๋ฉด ์๋ธํด๋์ค๊ฐ ๊ทธ ์์ฑ์ ๊ตฌํํด์ผํ๋๊ฑธ ๊ฐ์ ํ ์ ์์ผ๋๊น Attributeํ๋กํ ์ฝ์ getํ๋กํผํฐ๋ก ๋ฃ๋ ๊ฒ ํด๋ด
- ๊ทผ๋ฐ ์ด๋ ๊ฒ ํ๋ฉด ์นผ๋ก๋ฆฌ ํ๋กํผํฐ ์ ๊ทผ์๊ฐ ๋ค ์ด๋ ค์๋ ๋ฌธ์ ใ
ใ
- ๊ฒฐ๋ก : init์ ๋ฃ์
- init / super.init()์ผ๋ก ํ๋๊ฒ ์ข์ ๋ฏ > private์ผ๋ก ๊ฐ์ ์ ์์
- ๊ทธ๋ฆฌ๊ณ ์ด์ฐจํผ ํ๋กํ ์ฝ ์์ฑ์ผ๋ก ๋ฃ์ด๋, ๊ฐ์ ๋์ง๋ ์์ (Beverage๊ฐ ๊ตฌํํ๊ณ ์์ผ๋๊น ์๋ธํด๋์ค๊ฐ ๊ตฌํ ์ํด๋ ์๋ฌ ์๋จ)
- ์ง์ ํ ์์ฑ๋๋ก ๋ง๋ ์๋ฃ๋ฅผ ๋ฆฌํดํ๋ ๋ฉ์๋๊ฐ ๊ฐ๊ฐ์ ์๋ฃ์ ์๋๋ฐ, ์ด๊ฑธ Beverage๋ง ๊ฐ์ง๊ณ ์์ ์ ์๋๋ก ๋ง๋ค๋ฉด ์๋ธํด๋์ค๋ ์์ฑ๋ง ๊ฐ์ง๊ณ ์์ผ๋ฉด ๋จ
- ๋์
๋๋ฆฌ๋ฅผ ๊ฐ์ง๊ณ ๊ณ์ ๋ค์ ธ์ ์ฐพ๋ ๊ฒ ๊ณผ์ฐ ์ข์ ๋ฐฉ๋ฒ์ธ์งโฆ
- ํด์ปค๋ญํฌ ์๊ณ ๋ฆฌ์ฆ ํ์๋๋ฐ (Migratory-Birds) ์ค์ํํธ ์ง์ ์ํ๋ ๋ฌธ์ ์ธ์ง ์ค์ํํธ์ฝ๋์
๋ ฅ๋์ด ์์ด์ ์ ์ถ๋ชปํจใ
ใ
github
2018.03.06
์ํ๊ธฐ ์ฝ๋๋ฆฌ๋ทฐ์ค ์์ ํด์ผํ๋ ๋ถ๋ถ ์ง๋ฌธ ํ ์์ . ์๋ ๋ด์ฉ ๋ง๊ณ ๋ค๋ฅธ๊ฑด ๋ค ๊ณ ์นจ
- ์ด๋ ๊ฒ switch-case ๊ตฌ๋ฌธ์ด ์๋๋ผ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋ญ๊ฐ ์ข์๊น์?
6๊ฐ์์ 3๊ฐ๋ก ์ค์ด๋ค๊ฑฐ๋, 10๊ฐ๋ก ๋์ด๋๊ฑฐ๋ ๋ณํ๋ฅผ ์ต์ํํ ์ ์๋ ๋ฐฉ์์ธ์ง ์๋์ง ํ๋จํด๋ณด์ธ์.
- Dictionary๋ Array ๊ฐ์ ์ฝ๋์
์ mutating ์ผ๋ก ํ์ฅํ๊ธฐ ๋ณด๋ค๋ ์๋ก์ด ๋ฐฐ์ด์ด๋ ์ฌ์ ์ ๋ฆฌํดํ๋๋ก ์์ํ๊ฒ ์์ฑํ์ธ์. ๊ทธ๋์ผ ๋์ค์ ํด๋ก์ , ๋ณ๋ ฌ์ฒ๋ฆฌ ๋ฑ ์ฌ๋ฌ ์ํฉ์์ ์ ๋ฆฌํฉ๋๋ค.
(์..์ด๊ฑด ์ด๋ป๊ฒ ์์ ํ ์ ์์์ง ์ ๋ชจ๋ฅด๊ฒ ์ ใ
)
- ๋์
๋๋ฆฌ๋ ์์๊ฐ ์์.
์ํ๊ธฐ ์๋ฃ(objectidentifier) ์๋งํผ ๋ฒํธ๋ฅผ ์์๋๋ก ์ฐ๊ฒฐ, ๊ทธ ์์๋ฒํธ๋ฅผ ์ฝ์์ ํ์, ์
๋ ฅ๋ฐ์ ์๋ฃ ์ซ์์ ์ฝ์์ ํ์๋ ๋ฒํธ์ ๋น๊ตํ์ฌ ์ฐ๊ฒฐ, ๋ฒํธ์ ํด๋น๋๋ ์๋ฃ๋ฅผ ์ ํ
2018.03.07
admin๋ชจ๋ ๋์ ์์ : ์๋ฃ ์ถ๊ฐ์ ์ญ์ ๋ ์ฌ์ฉ๋๋ index๊ฐ ๋ค๋ฅด๊ธฐ๋๋ฌธ์ ๋ถ๋ฆฌ ํ์ํจ
2018.03.08
์ํ๊ธฐ step4 ์ฝ๋๋ฆฌ๋ทฐ ๋ฐ์๋ด์ฉ ์์
- Money/History/Inventory๊ฐ์ฒด ๋ฆฌํฉํ ๋ง
Shelf์ฒ๋ผ History ๋ Inventory๋ ์ฌ์ ์ด๋ ๋ฐฐ์ด์ด ์๋๋ผ ๊ฐ์ฒด๋ก ๋ง๋ค๋ฉด ์ฌ๊ธฐ ์ฝ๋๋ค์ด ํจ์ฌ ๊ฐ๊ฒฐํด ์ง ๊ฒ๋๋ค. ์์ผ๋ก๋ ๋ฐฐ์ด์ด๋ ์ฌ์ ์ผ๋ก ์ ์ธํ๋ ๋ณ์์ ์ ๊ทผํ๋ ์ฝ๋๊ฐ ๋ง์ผ๋ฉด ํ์ ๋ชจ๋๋ก ๋ง๋ค์ด์ ์์ ๋ชจ๋์ ์ฝ๋๋ฅผ ์ค์ฌ๋ณด์ธ์. ์ต์
๋ ์์ธ์ฒ๋ฆฌ๋ ํจ์ฌ ์์ํด์ง ๊ฒ๋๋ค
- ์ง๋ฌธ: ์ด๋ฏธ VendingMachine์ด Stock์ ๊ฐ๊ณ ์์ผ๋ฉด Stock์ ์กฐ์ํ๋ ์ฝ๋๊ฐ ๋๋ฌด ๊ธธ์ด์ ธ์ Stock์ผ๋ก ๋ถ๋ฆฌํ๋ค. ๊ทธ๋ฐ๋ฐ JK๊ฐ ๋งํ ๋งฅ๋ฝ์์ ๋ณด๋ฉด ์ด๋ค ์ ๋๊น์ง ์.ํ์ ๋ชจ๋์ ๋ถ๋ฆฌ ํ๋๊ฒ์ด ์ข์๊ฑด์ง ๊ธฐ์ค์ ๋ชจ๋ฅด๊ฒ ๋ค!
- ์๋ฏธ๊ฐ ์์ผ๋ฉด ์ต๋ํ ๊ฐ์ฒด๋ก ๋ถ๋ฆฌํ๋ ๊ตฌ์กฐ๋ก ์ง์ผํจ. ์๋ฅผ๋ค์ด balance๋ ๋จ์ํ Intํ์
์ ์์ฑ์ด์ง๋ง balance์์ฒด๋ฅผ ์กฐ์ํ๋ ๋์์ VendingMachine์ด ํ๊ณ ์์์ ๋๋ก ์๋ฏธ์๋์ฝ๋๋๊น, Int๊ฐ์ VendingMachine์ด ์ง์ +-ํ๋๊ฒ์ด ์๋๋ผ, Money๊ฐ์ฒด๋ก ๋ถ๋ฆฌํด์ Money๊ฐ ๊ฐ์ง Int๊ฐ์ ์กฐ์ ํ๋ ์์
์ ๋ด๋ถ์์ ํ๋๋ก ๋ณ๊ฒฝํ๋ ๊ฒ์ด ์ข์
- Stock์ Inventory๊ฐ์ ๊ฒฝ์ฐ์๋ stock์ด ๋์
๋๋ฆฌ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋๊น stock๋ด๋ถ์ ๊ทธ ๋์
๋๋ฆฌ๋ฅผ ์กฐ์ํ๋ ์ฝ๋๊ฐ ๋๋ฌด ๊ธธ์ด์ง๊ณ ์์.(=๋ฐฐ์ด์ด๋ ์ฌ์ ์ผ๋ก ์ ์ธํ๋ ๋ณ์์ ์ ๊ทผํ๋ ์ฝ๋๊ฐ ๋ง์ ๊ฒฝ์ฐ) stock์ด ๊ฐ์ง ๋์
๋๋ฆฌ๋ ๋จ์ํ ๋์
๋๋ฆฌ๊ฐ ์๋๋ผ inventory๋ผ๋ ์๋ฏธ๋ฅผ ๊ฐ์ง ๋จ์์ด๊ธฐ๋๋ฌธ์ inventory์ค์ค๋ก๊ฐ ๋์
๋๋ฆฌ๋ฅผ ๊ฐ๊ณ ์๊ณ ์กฐ์ํ๋๊ฒ ๋ง์. (๋ง์ฝ ๊ทธ ์์๋ ์๋ฏธ์๋ ๋จ์๊ฐ ์๋ค๋ฉด ๋ ๊ฐ์ฒด๋ก ๋ถ๋ฆฌํ๋๊ฒ ์ข์.)
- keyword: โ์๋ฏธ์๋ ๋จ์โ๋ก ๊ฐ์ฒด๋ฅผ ๋ถ๋ฆฌํ๋ค!
์์ ํ ์ฌํญ
- History๊ฐ์ฒด์ ๋์ ๋ฐ ์ฑ
์ ์ถ๊ฐ, VendingMachine์์ก์ ํ์ํ๋ balance์์ฑ์ Money๊ฐ์ฒด๋ก ํ์
๋ณ๊ฒฝ, Money๊ฐ์ฒด์๋ ๋ง์ฐฌ๊ฐ์ง๋ ๋์, ์ฑ
์ ์ถ๊ฐ, inventory๊ฐ์ฒด์๋
2018.03.09
- ์ํ๊ธฐ ๋ฏธ์
readme์ ๋ฆฌ
- ์ํ๊ธฐ ๋ฏธ์
์ฒดํฌ๋ฆฌ์คํธ ์์ฑ
- ๋ ๋ฒจ3 ์ด๋ฐ ์๋ฃ ์ฝ์ด๋ณด๊ธฐ (HIG, UI, iOS๋์์ธ, ADSโฆ)
- ์ฌ์ง์ก์ ์ฑ ์์!
2018.03.10
2018.03.11
- ์ฌ์ง์ก์ ์ฑ 2๋จ๊ณPR
- IBOutlet ์กฐ์ฌ
- UILabel ํด๋์ค ํ๋กํผํฐ ์กฐ์ฌ