iOS ๋์ด๊ณต๊ฐ์ ๋๋ค.
local account
extension CALayer {
func addBorder(_ edges: [UIRectEdge], color: UIColor, width: CGFloat) {
for edge in edges {
let border = CALayer()
switch edge {
case .top:
addBorderEdge(border, x: 0, y: 0, width: frame.width, height: width)
case .bottom:
addBorderEdge(border, x: 0, y: frame.height - width, width: frame.width, height: width)
case .left:
addBorderEdge(border, x: 0, y: 0, width: width, height: frame.height)
case .right:
addBorderEdge(border, x: frame.width - width, y: 0, width: width, height: frame.height)
default:
break
}
}
func addBorderEdge(_ border: CALayer, x: CGFloat, y: CGFloat, width: CGFloat, height: CGFloat) {
border.frame = CGRect(x: x, y: y, width: width, height: height)
border.backgroundColor = color.cgColor
addSublayer(border)
}
}
}
- ์ธ๋ถ์์ ๋งํฌ๋ฅผ ํตํด ์ฑ์ ์คํํฉ๋๋ค.
- iOS ํ์ผ ์์คํ ์ ๋ํ ๊ธฐ๋ก์ ๋๋ค.
- ์คํ ๋ทฐ ์์ฑ ๋ฐ ์ค์
- ์ฑ ๋ผ์ดํ์ฌ์ดํด
- ๋ทฐ ์ปจํธ๋กค๋ฌ ๋ผ์ดํ์ฌ์ดํด
- Core Location์ ํ์ฉํ์ฌ ์์น ์ ๋ณด ๊ตฌํ๊ธฐ
- ํ ์ด๋ธ ๋ทฐ, ์ปค์คํ ์ , ๋ฐ์ดํฐ ์์ค๋ฅผ ํ์ฉ
- ์์ผ์ ์ฌ์ฉํ ๋คํธ์ํฌ ํต์ ์ ๊ตฌํํฉ๋๋ค.
- ๋ก์ปฌ ์๋ฒ๋ฅผ ์ด์ฉํฉ๋๋ค.
- ๊ฐ์ฒด(๋ทฐ ์ปจํธ๋กค๋ฌ) ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ๋ฐฉ๋ฒ์ ๊ตฌํ ์ ๋ฆฌํด๋ณด์์ต๋๋ค.
- iOS ์ํคํ ์ฒ ํจํด์ ๋ํด ์ ๋ฆฌํด๋ณด์์ต๋๋ค.
- MVC ํจํด ๊ฐ๋ ์ ๋ฆฌ
- Collection View ์ฌ์ฉํด๋ณด๊ธฐ.
- Carousel Effect!!!
- Drag and drop ์ฌ์ฉํด๋ณด๊ธฐ.
- ์ฝ๋๋ก auto layout ๊ตฌํํ๊ธฐ(auto layout programmatically)
- ๋ค์ํ ๋ทฐ ๋ ์ด์์
- User Notifications ์ ๋ฆฌ
- Protocol, Delegate, Implement ๊ตฌํ
- ๊ณ์ธต์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋ ๋ทฐ ์ปจํธ๋กค๋ฌ