์ฐ์ Launch Screen์๋ custom class, custom UI ๋ฑ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. (์ค์ง Storyboard + ๊ธฐ๋ณธ UI Component๋ง ์ฌ์ฉ ๊ฐ๋ฅ) ๊ทธ๋์ Launch Screen์ Gif(Custom Class)๋ ๋ฃ์ ์ ์๊ณ ๋์ ์ด๋ฐ์์ผ๋ก Launch Screen ์ดํ Custom Splash VC๋ฅผ ์ถ๊ฐํ์ฌ gif๋ฅผ 1 ~ 2์ด ์ฌ์ํ ๋ค Main VC๋ก ๊ฐ๋ ๋ฐฉ๋ฒ์ ์ ํํ ์ ์์ต๋๋ค. SceneDelegate์์ func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { guard let _ = (sce..
์ ์ฌ์ง ๊ฐ์ drop down ์ฒ๋ผ ๋ถ๋ชจ๋ทฐ์ ํ๋ ์์ ํ์์ด๊ณ ์์๋ทฐ๋ ์ด๋ก์ ์์ญ์ผ ๋ ๋ถ๋ชจ๋ทฐ์ ์์ญ์ธ (3)์ ์์๋ทฐ๋ ํฐ์น๊ฐ ๋๋๋ฐ (4)๋ ๋ถ๋ชจ์ ์์ญ ๋ฐ์ด๋ผ ํฐ์น๊ฐ ์๋ฉ๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ๋ทฐ ์์ฒด์์ ํฐ์น๋ฅผ ๊ฐ์งํ๋ ๋ฉ์๋๋ฅผ ์ฌ์ ์ํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. class CustomUIView: UIView { override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? { if !self.clipsToBounds && !self.isHidden && self.alpha > 0.0 { let subviews = self.subviews.reversed() for member in subviews { let subPoi..
๋ชฉ๋ก ์ฝ๋ AudioEngine setCategory, setMode - ์ค๋์ค ์์ง ์ ์ ์ฝ๋ ์์ฑ๊ฐ AVAudioSession.Category - ์ ์ถ๋ ฅ์ ์ด AVAudioSession.CategoryOptions - ๊ถํ์ฌ๋ถ AVAudioSession.Mode - ์ ๋ ฅ ๋ชจ๋์ ์ข ๋ฅ, ์ถ๋ ฅ ๋ชจ๋์ ์ข ๋ฅ AVAudioSession.Port - ์ ์ถ๋ ฅ ์ฅ์น ์ค๋์ค ์ ์ ์ฝ๋ Audio Engine setCategory, setMode - ์ค๋์ค ์์ง ์ ์ let audioSession = AVAudioSession.sharedInstance() do { try audioSession.setCategory(.playAndRecord, options: .allowBluetooth) try audioSessio..
์์๊ฐ ๋ด์ฉ 1. VCS๊ฐ ๋ฌด์์ธ์ง 2. Git ์ด๋ผ๋๊ฒ ๋ฌด์์ธ์ง 3. Git ํ์ ๋ฐฐ๊ฒฝ, ์ฌ์ฉ ์ด์ 4. Git vs VCS VCS (Version Control System) ์ด๋? - ํ์ผ ๋ณํ๋ฅผ ์๊ฐ์ ๋ฐ๋ผ ๊ธฐ๋กํ๋ค๊ฐ ํน์ ์์ ์ ๋ฒ์ ์ ๊ฐ์ ธ์ฌ ์ ์๋ ์์คํ ์ด๋ค. e.g. ํฌํ ์ต ํธ์ง ํ์คํ ๋ฆฌ ๋ก์ปฌ ๋ฒ์ ๊ด๋ฆฌ ์ต์ข ๋ณธ_2023_10_09_01.psd ์ต์ข ๋ณธ_2023_10_09_02.psd ์ต์ข ๋ณธ_2023_10_10_01.psd ์ด๋ฐ์์ผ๋ก ๋ฒ์ ๊ด๋ฆฌํ ์๋ ์์ง๋ง ๋จ์ - ์๋ชป ๋ณต์ฌํ๋ค๊ฑฐ๋ - ๋๋ ํ ๋ฆฌ๊ฐ ์ง์์ง๋ค๊ฑฐ๋ - ์๋ชป ์ ์ฅํ๋ค๊ฑฐ๋ (๊ทธ๋์ ๋์จ๊ฒ) RCS (Revision Control System) - ๋ก์ปฌ ๋ฒ์ ๊ด๋ฆฌ ์์คํ - ๋ณ๊ฒฝ๋๋ ๋ถ๋ถ(Patch Set)์ ๋ก์ปฌ DB์ ์ ์ฅํ๊ณ , ํด..
1. ํฐ๋ฏธ๋์ ์ด ์ฝ๋๋ฅผ ์ณ์ ๋น๋ ์๊ฐ์ ์ธก์ ํ ์ ์๋ค. defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES ๊ทธ๋ฌ๋ฉด ์ด๋ ๊ฒ ์๊ฐ์ด ๋ธ 2. ์๊ฐ์ด ์ค๋๊ฑธ๋ฆฌ๋ (e.g. 100ms์ด์) code line ์ warning์ ๋์ธ ์ ์๋ค. ๋น๋์ ํ Other Swift Flags ์ ์๋ ์ฝ๋๋ฅผ ์ถ๊ฐํด์ค๋๋ค -Xfrontend -warn-long-function-bodies=100 -Xfrontend -warn-long-expression-type-checking=100 ์ด๋ฐ์์ผ๋ก ์๊ฐ์ด ๋ธ (11826ms) 3. init ํ์ ๋ช ์ ์ ์ด๋ฏธ์ง๋ฅผ ๋ณด๋ฉด UIColor๋ฅผ init์ผ๋ก ํ์๋๋ฐ ์ด๋ฌ๋ฉด ์๊ฐ์ด ๊ต์ฅํ ์์๋จ initํ ๋ initํ..
๋ ํผ๋ฐ์ค raywenderlich tutorial, ์ ํ ๊ณต์๋ฌธ์ https://www.kodeco.com/632-ibeacon-tutorial-with-ios-and-swift https://developer.apple.com/ibeacon/Getting-Started-with-iBeacon.pdf https://developer.apple.com/documentation/corelocation/determining_the_proximity_to_an_ibeacon_device iBeacon์ด ์ ๊ณตํ๋ ์ ๋ณด iBeacon๋ UUID, major, minor์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์์. iBeacon ์๋ณ 1. iBeacon์ ์ฌ์ฉํ๊ธฐ์ํด์ iBeacon์ UUID๋ฅผ Client์์ ์๊ณ ์์ด์ผํ๋ค. (๋ชจ๋ฅด๋ฉด ์..
- Total
- Today
- Yesterday
- xcode code snippet
- ios ๊ฐ์ update
- swift ํ๊ฐ
- swift line spacing extension
- swift ํ๊ฐ extension
- xcode ์ฌ๋ฌ์ค ํธ์ง
- xcode ํจ์ ์ ๊ธฐ
- xcode code ๋จ์ถ
- xcode ๋จ์ถํค ๊ฟํ
- swift textview ์๊ฐ
- swift fast build
- swift uilabel ํ๊ฐ
- fast build xcode
- reduce xcode build time
- swift ๊ฐ์ ์ ๋ฐ์ดํธ
- swift line spacing
- swift touch outside parentView
- xcode ui code dirty
- xcode ui code ์ง์ ๋ถ
- xcode ํจ์ ํ๋ฒ์ ์ ๊ธฐ
- swift uilabel ์๊ฐ
- swift textview ํ๊ฐ
- xcode ํ๋ฒ์ ์ฌ๋ฌ์ค ํธ์ง
- xcode mark ํ
- swift ์๊ฐ Extension
- swift ๋ถ๋ชจ๋ทฐ ์ธ๋ถ์์ญ ํฐ์น
- swift ์๊ฐ
- swift code snippet
- ios ์ฑ ์ ๋ฐ์ดํธ
- swift ์ฑ ์ ๋ฐ์ดํธ
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |