๐ฑ iOS
-
๋ช๋ ์งธ ์ ์ฌ์ฉ์ค์ด๋ png ์ด๋ฏธ์ง ํ์ผ์์ ์ํ์ฑ๋์ด ํฌํจ๋ ๋ถ๋ถ์ด ํ์์ผ๋ก ์์น ๋์ด ๋์ค๊ธฐ ์์ํ๋ค. Xcode 15.2์ธ์ง... ์ด์ ์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค. ์ ํ ๊ฐ๋ฐ์ ํฌ๋ผ์์ ํด๋ต์ ์ฐพ์๋๋ฐ, ๋งฅ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ด๊ณ cmd + i ๋ฅผ ๋๋ฅด๋ฉด ์ด๋ฏธ์ง์ ์ฌ๋(bit)๋ฅผ ํ์ธํ ์ ์๋ค. ์ด ์ฌ๋๊ฐ 4bit๋ผ๋ฉด ์๋ก์ด Xcode(15.x)์์ ๋ ๋๋ง๊ณผ์ ์์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ์ด์์๋ค. ๋ฐ๋ผ์ 8๋นํธ๋ก ๋ฐ๊ฟ์ฃผ๋ฉด ๋๋ ๋ฌธ์ ์๋ค. #!/bin/bash # input_folder ๋ณ์์ ์คํฌ๋ฆฝํธ๊ฐ ์๋ ํด๋ ๊ฒฝ๋ก๋ฅผ ์ค์ ํฉ๋๋ค. input_folder="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # input_folder ๋ด *.png ํ์ผ์ ์ฐพ์ while ๋ฃจํ๋ก ์ํํฉ๋..
Xcode 15.x ์์ ๊ฐ์๊ธฐ png ์ด๋ฏธ์ง๊ฐ ํ์์ผ๋ก ํ์๋๋ ํ์๋ช๋ ์งธ ์ ์ฌ์ฉ์ค์ด๋ png ์ด๋ฏธ์ง ํ์ผ์์ ์ํ์ฑ๋์ด ํฌํจ๋ ๋ถ๋ถ์ด ํ์์ผ๋ก ์์น ๋์ด ๋์ค๊ธฐ ์์ํ๋ค. Xcode 15.2์ธ์ง... ์ด์ ์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค. ์ ํ ๊ฐ๋ฐ์ ํฌ๋ผ์์ ํด๋ต์ ์ฐพ์๋๋ฐ, ๋งฅ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ด๊ณ cmd + i ๋ฅผ ๋๋ฅด๋ฉด ์ด๋ฏธ์ง์ ์ฌ๋(bit)๋ฅผ ํ์ธํ ์ ์๋ค. ์ด ์ฌ๋๊ฐ 4bit๋ผ๋ฉด ์๋ก์ด Xcode(15.x)์์ ๋ ๋๋ง๊ณผ์ ์์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ ์ด์์๋ค. ๋ฐ๋ผ์ 8๋นํธ๋ก ๋ฐ๊ฟ์ฃผ๋ฉด ๋๋ ๋ฌธ์ ์๋ค. #!/bin/bash # input_folder ๋ณ์์ ์คํฌ๋ฆฝํธ๊ฐ ์๋ ํด๋ ๊ฒฝ๋ก๋ฅผ ์ค์ ํฉ๋๋ค. input_folder="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # input_folder ๋ด *.png ํ์ผ์ ์ฐพ์ while ๋ฃจํ๋ก ์ํํฉ๋..
2024.03.18 -
๋ณดํธ๋์ด ์๋ ๊ธ์ ๋๋ค.
1๋ณดํธ๋์ด ์๋ ๊ธ์ ๋๋ค.
2024.03.15 -
Xcode 15.3์ผ๋ก ์ ๋ฐ์ดํธ ํ๋ค์ ๋งค์ผ ๋ณด๋ ํ๋ก์ ํธ๊ฐ ์ด๋ฆฌ์ง ์์๋ค... ์๋ฌด๋ฆฌ ๊ตฌ๊ธ๋ง ํด๋ด๋ ํด๊ฒฐ๋ฒ์ ์์๋๋ฐ ์ปค๋ฎค๋ํฐ ๋จํก๋ฐฉ์์ ๋ต์ ์ป์๋ค. Path, ํด๋, Assets ๋ฑ์ ํ๊ธ๋ก ๋ ๊ฒ๋ค์ด ์์๋ ํฌ๋์๊ฐ ๋๋๊ฒ์ด์๋ค. 1. Xcode15.2๋ฅผ ๋ค์ด๋ฐ์์ Xcode ๋ด์์ ํด๋์ ์์ ๋ค์ ์ ๋ถ ์์ด๋ก ๋ฐ๊ฟ์ค๋ค. 2. ์ค์ ํด๋๋ช ๋ ์์ด๋ก ๋ฐ๊ฟ์ค๋ค. (Finder ๋๋ ํฐ๋ฏธ๋์์) 3. pbxproj ํ์ผ ์ด๊ณ ์๋ฐ๋๊ฑฐ ์๋ ํ์ธํด๋ณธ๋ค. ์ด๊ณผ์ ๋๋๋๊น ์ด๋ ธ๋ค ใ ใ ํ๊ธ ์ด์๊ธฐ ๋๋ฌธ์ ๊ตฌ๊ธ๋งํด๋ ์ ์๋์๋๋ณด๊ตฌ๋... https://forums.developer.apple.com/forums/thread/748340 XCode 15 Crash when opening my pro… | Ap..
XCode 15.3 ํ๋ก์ ํธ ์์ด๋ฆฌ๋ ์๋ฌ (Abort)Xcode 15.3์ผ๋ก ์ ๋ฐ์ดํธ ํ๋ค์ ๋งค์ผ ๋ณด๋ ํ๋ก์ ํธ๊ฐ ์ด๋ฆฌ์ง ์์๋ค... ์๋ฌด๋ฆฌ ๊ตฌ๊ธ๋ง ํด๋ด๋ ํด๊ฒฐ๋ฒ์ ์์๋๋ฐ ์ปค๋ฎค๋ํฐ ๋จํก๋ฐฉ์์ ๋ต์ ์ป์๋ค. Path, ํด๋, Assets ๋ฑ์ ํ๊ธ๋ก ๋ ๊ฒ๋ค์ด ์์๋ ํฌ๋์๊ฐ ๋๋๊ฒ์ด์๋ค. 1. Xcode15.2๋ฅผ ๋ค์ด๋ฐ์์ Xcode ๋ด์์ ํด๋์ ์์ ๋ค์ ์ ๋ถ ์์ด๋ก ๋ฐ๊ฟ์ค๋ค. 2. ์ค์ ํด๋๋ช ๋ ์์ด๋ก ๋ฐ๊ฟ์ค๋ค. (Finder ๋๋ ํฐ๋ฏธ๋์์) 3. pbxproj ํ์ผ ์ด๊ณ ์๋ฐ๋๊ฑฐ ์๋ ํ์ธํด๋ณธ๋ค. ์ด๊ณผ์ ๋๋๋๊น ์ด๋ ธ๋ค ใ ใ ํ๊ธ ์ด์๊ธฐ ๋๋ฌธ์ ๊ตฌ๊ธ๋งํด๋ ์ ์๋์๋๋ณด๊ตฌ๋... https://forums.developer.apple.com/forums/thread/748340 XCode 15 Crash when opening my pro… | Ap..
2024.03.15 -
Observable -> Subscriber ๋ก ErrorEvent๊ฐ ์ ๋ฌ๋๋ฉด, ๊ตฌ๋ ์ด ์ข ๋ฃ๋๊ณ ๋ ์ด์ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌ๋ฐ์ง ๋ชปํ๊ฒ ๋๋ค. ๊ทธ๋ ๊ฒ๋๋ฉด ๋ ์ด์ ์๋ก์ด ์ด๋ฒคํธ์ ๋ํด์ ํธ๋ค๋งํ ์ ์๊ฒ๋๋ค. ์ผ๋ฐ์ ์ธ์ํฉ์์ Observable์ Network๋ฅผ ์์ฒญํ๊ณ , Subscriber๋ UI๋ฅผ ์ ๋ฐ์ดํธํ๋ค. ์ด๋ ErrorEvent๊ฐ ๋ฐ์ํ๋ฉด ๊ตฌ๋ ์ด ์ข ๋ฃ๋์ด ๋ ์ด์ UI๋ฅผ ์ ๋ฐ์ดํธ ํ์ง ๋ชปํ๊ฒ๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ catch ํน์ retry๋ฅผ ํตํด์ ํด๊ฒฐํ ์ ์๋ค. Catch (Operator) CatchError๋ฅผ ์ฌ์ฉํ๋ฉด Next, Completed ์ด๋ฒคํธ๋ ํ์๋๋ก ๊ตฌ๋ ์์๊ฒ ์ ๋ฌํ๋ค. ํ์ง๋ง ErrorEvent๊ฐ ๋ฐ์ํ๋ฉด ์๋ก์ด Observable์ ์์ฑํ์ฌ ๊ตฌ๋ ์์๊ฒ ์ ๋ฌํด์ฃผ๊ฑฐ๋, ๊ธฐ๋ณธ๊ฐ์ ..
(RxSwift) Error ๋ค๋ฃจ๊ธฐ, Retry, CatchObservable -> Subscriber ๋ก ErrorEvent๊ฐ ์ ๋ฌ๋๋ฉด, ๊ตฌ๋ ์ด ์ข ๋ฃ๋๊ณ ๋ ์ด์ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌ๋ฐ์ง ๋ชปํ๊ฒ ๋๋ค. ๊ทธ๋ ๊ฒ๋๋ฉด ๋ ์ด์ ์๋ก์ด ์ด๋ฒคํธ์ ๋ํด์ ํธ๋ค๋งํ ์ ์๊ฒ๋๋ค. ์ผ๋ฐ์ ์ธ์ํฉ์์ Observable์ Network๋ฅผ ์์ฒญํ๊ณ , Subscriber๋ UI๋ฅผ ์ ๋ฐ์ดํธํ๋ค. ์ด๋ ErrorEvent๊ฐ ๋ฐ์ํ๋ฉด ๊ตฌ๋ ์ด ์ข ๋ฃ๋์ด ๋ ์ด์ UI๋ฅผ ์ ๋ฐ์ดํธ ํ์ง ๋ชปํ๊ฒ๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ catch ํน์ retry๋ฅผ ํตํด์ ํด๊ฒฐํ ์ ์๋ค. Catch (Operator) CatchError๋ฅผ ์ฌ์ฉํ๋ฉด Next, Completed ์ด๋ฒคํธ๋ ํ์๋๋ก ๊ตฌ๋ ์์๊ฒ ์ ๋ฌํ๋ค. ํ์ง๋ง ErrorEvent๊ฐ ๋ฐ์ํ๋ฉด ์๋ก์ด Observable์ ์์ฑํ์ฌ ๊ตฌ๋ ์์๊ฒ ์ ๋ฌํด์ฃผ๊ฑฐ๋, ๊ธฐ๋ณธ๊ฐ์ ..
2023.05.26 -
Subject ์ด๋ฒคํธ ์ ๋ฌ ๋ฐฉํฅ: Observable -> Observer Observer๋ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌํ ์ ์๊ณ , Observer๋ฅผ ๊ตฌ๋ ํ ์๋ ์๋ค. (Observable๋ง ๊ตฌ๋ ํ ์ ์๋ค.) ์ด ์ฌ์ด์์ ๋์์ ์ฃผ๋๊ฒ Subject์ด๋ค. Observable -> Subject(Observable or Observer) -> Observer ์๋ฐ์์ผ๋ก Subject๋ Observable์ด๋ Observer๊ฐ ์๋ ๋ชปํ๋ ์ด๋ฒคํธ ์ ๋ฌ์ ๋์์ฃผ๊ฒ๋๋ค. ์ฆ, Subject๋ Observer๋ ๋ ์ ์๊ณ , Observable๋ ๋ ์ ์๋ค. ๋๊ฐ์ง ์ญํ ์ ๋ชจ๋ ํ ์ ์๋ค. 4๊ฐ์ง ์ข ๋ฅ์ Subject PublishSubject BehaviorSubject ReplaySubject AsyncSubjec..
RxSwift (2) - Subject & RelaySubject ์ด๋ฒคํธ ์ ๋ฌ ๋ฐฉํฅ: Observable -> Observer Observer๋ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌํ ์ ์๊ณ , Observer๋ฅผ ๊ตฌ๋ ํ ์๋ ์๋ค. (Observable๋ง ๊ตฌ๋ ํ ์ ์๋ค.) ์ด ์ฌ์ด์์ ๋์์ ์ฃผ๋๊ฒ Subject์ด๋ค. Observable -> Subject(Observable or Observer) -> Observer ์๋ฐ์์ผ๋ก Subject๋ Observable์ด๋ Observer๊ฐ ์๋ ๋ชปํ๋ ์ด๋ฒคํธ ์ ๋ฌ์ ๋์์ฃผ๊ฒ๋๋ค. ์ฆ, Subject๋ Observer๋ ๋ ์ ์๊ณ , Observable๋ ๋ ์ ์๋ค. ๋๊ฐ์ง ์ญํ ์ ๋ชจ๋ ํ ์ ์๋ค. 4๊ฐ์ง ์ข ๋ฅ์ Subject PublishSubject BehaviorSubject ReplaySubject AsyncSubjec..
2023.05.17 -
Observable ํน์ Observable Sequence , Sequence์๋ ๊ฐ์ ๋ง์ด๋ค. ๊ด์ฐฐ ๊ฐ๋ฅํ ๊ฐ์ฒด์ด๋ฉฐ, ๊ตฌ๋ ์๊ฐ ์ด๋ฅผ ๊ตฌ๋ ํ์ฌ “์ด๋ฒคํธ”๋ฅผ ๋ฐ์ ์ ์๋ค. ์ด๋ฒคํธ์๋ 3๊ฐ์ง ์ข ๋ฅ๊ฐ ์๋ค. ์ด๋ฒคํธ์ ์ ๋ฌ ๋ฐฉํฅ : Observable -> Observer ์ด๋ฒคํธ์ ๊ด์ฐฐ ๋ฐฉํฅ : Observable Disposable in observer(50) observer(.next(100)) observer() return Disposables.create() } 2. From ์ฐ์ฐ์๋ฅผ ์ด์ฉํ ์์ฑ let observerble2 = Observable.from([-50, -100]) SubScribe Observable์ Observer์๊ฒ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌํ๋ค. ์ด ์ ๋ฌ๋๋ ์์ ์ observer๊ฐ o..
RxSwift (1) ์ฃผ์ ๊ฐ๋ (Observable , Subscribe, Disposable, Operator)Observable ํน์ Observable Sequence , Sequence์๋ ๊ฐ์ ๋ง์ด๋ค. ๊ด์ฐฐ ๊ฐ๋ฅํ ๊ฐ์ฒด์ด๋ฉฐ, ๊ตฌ๋ ์๊ฐ ์ด๋ฅผ ๊ตฌ๋ ํ์ฌ “์ด๋ฒคํธ”๋ฅผ ๋ฐ์ ์ ์๋ค. ์ด๋ฒคํธ์๋ 3๊ฐ์ง ์ข ๋ฅ๊ฐ ์๋ค. ์ด๋ฒคํธ์ ์ ๋ฌ ๋ฐฉํฅ : Observable -> Observer ์ด๋ฒคํธ์ ๊ด์ฐฐ ๋ฐฉํฅ : Observable Disposable in observer(50) observer(.next(100)) observer() return Disposables.create() } 2. From ์ฐ์ฐ์๋ฅผ ์ด์ฉํ ์์ฑ let observerble2 = Observable.from([-50, -100]) SubScribe Observable์ Observer์๊ฒ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌํ๋ค. ์ด ์ ๋ฌ๋๋ ์์ ์ observer๊ฐ o..
2023.05.17