์ ์ฒด ๊ธ
-
ActivityView in SwiftUISwiftUI 2021. 11. 29. 22:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์์ ActivityView(์กํฐ๋นํฐ ๋ทฐ)๋ฅผ ๋์ฐ๋๊ฒ์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐๐ป SwiftUI๋ฅผ ํตํด ๊ตฌํ์ ํ๋ค ์ด๋ป๊ฒ ํ๋ฉด ์๋ฐ ๋ฐ์ดํฐ๋ฅผ ๊ณต์ ํ ์ ์๋ ์กํฐ๋นํฐ ๋ทฐ๋ฅผ ๋์ธ ์ ์์๊น์ ๋ํด ๊ณ ๋ฏผํ๊ณ ์คํ ์ค๋ฒํ๋ก์ ๋ค์ํ ๋ ํผ๋ฐ์ค๋ฅผ ํตํด ๊ตฌํํด๋ณด์์ต๋๋ค! ๋ฐ๋ก ์ด์ ๋ธ๋ก๊ทธ ํฌ์คํ ์ธ ๋งํฌ๊ณต์ & ๋งํฌ์ด๋์์ ์กํฐ๋นํฐ ๋ทฐ๋ฅผ ๋์ฐ๋๊ฑธ ํ์ตํด๋ณด์๋๋ฐ์. ๊ทธ๊ฑด UIKit์ ๋ฐฉ์์ ๊ฑฐ์ ์ ์ฌํ์ฌ ์กฐ๊ธ ๋ SwiftUI๋ก ๊ตฌํํด๋ณด์์ด์. https://green1229.tistory.com/194 ๋ค ์์ผ๋ก ๊ตฌํํ ๊ฒ์ด ์ด๋ฐ halfํ ์กํฐ๋นํฐ ๋ทฐ๋ฅผ ๋์ฐ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ผ ๋จผ์ ๋์๋๋ ํ๋ฉด์ ๊ฐ๋จํ ์งค๋ก ๋ณด์์ฃ ! ๋์ํ๋ฉด ์ ์ ๋ง ๊ฐ๋จํ ์ ๋ธ๋ก๊ทธ URL์..
-
๋งํฌ ๊ณต์ & ์ด๋ ๊ตฌํํ๊ธฐiOS 2021. 11. 23. 22:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ iOS์์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ผ๋ก ์ฌ๋ฌ๋ชจ๋ก ์ ์ฌ์ฉ๋๊ณ ์๋ ๋งํฌ ๊ณต์ ๋ฐ ๋งํฌ ์ด๋ํ๊ธฐ์ ๋ํด ๊ตฌํํด๋ณด๊ฒ ์ต๋๋ค๐๐ป ๋ค๋ค ์ฑ์ ์ฌ์ฉํ์๋ค๊ฐ ๋งํฌ๋ณต์ฌ๋ฅผ ํตํด ๋งํฌ ๊ณต์ ํ๊ธฐ ๊ทธ๋ฆฌ๊ณ ๋ฒํผ์ ๋๋ฌ์ ํน์ ์นํ์ด์ง๋ก ์ด๋ํ๋ ๋ฑ์ ๊ฒฝํ์ ์์ฃผ์์ฃผ ๋น์ฐํ๊ณ ๋ง์ด ์์ผ์ค๊ฒ๋๋ค! ๊ทธ๋์ ์ด ๋น์ฐํ๊ฑด ๋น์ฐํ๊ฒ SwiftUI๋ก ํ๋ฒ ๋์ ํด๋ณด๊ฒ ์ต๋๋ค. ์ฌ์ค ๋ทฐ๋ง SwiftUI์ผ ๋ฟ์ด์ง ๊ทธ ๋งํฌ์ ๋ํ ์ก์ ์ ํน๋ณํ ๊ฑด ์์ด์..๐ ์คํ์ค๋ฒํ๋ก๋ ๊ตฌ๊ธ๋ง๋ง ํด๋ด๋ ๋งํฌ ๊ณต์ ์ ์ด๋์ ๋ํด์ ๋๋ฌด๋๋ฌด ๊ณต์์ฒ๋ผ ๋ง์ด ๋์ค๊ธฐ์ ์ด๊ฑธ ์ ํ์ฉํด์ ์ ๋ ์กฐ๊ธ ๋ ๊ตฌ์กฐ์ ์ผ๋ก ๋ง๋ค์ด๋ณด๊ฒ ์ต๋๋ค๐๐ป ์ฐ์ ์ด๋ค ๊ตฌํ์ ํ ๊ฒ์ธ์ง ์๋ฎฌ๋ ์ดํฐ ๋์์ ๋ณด์์ฃ ! ์๋ฎฌ๋ ์ดํฐ ๋์ ์ ๊ณต์ ๋ฅผ ๋๋ฅด๋ฉด ์๋ฎฌ๋ ์ดํฐ์ฌ์ ์นดํก์ด๋ ๋ค..
-
Rotation AnimationSwiftUI 2021. 11. 21. 11:23
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ ์ค๋๋ง์ ๊ฐ๋จํ UI์ ๊ด๋ จํ์ฌ ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐ ๋ฐ๋ก Rotation Animation์ ๋๋ค. ์์ฆ ๋๋ฌด ์ ์ ์ธ๊ฒ๋ง? ํ์ตํ๊ฒ ๊ฐ์์ ์กฐ๊ธ ์ฌ๋ฐ๋๊ฑธ ํด๋ณด๋ คํฉ๋๋ค! ๋ค๋ค ๋ฆฌํ๋ ์ฌ ๋ฒํผ์ ๋ํด์๋ ์๊ณ ๊ณ์ค๊ฒ๋๋ค. ์ฆ ์๋ก๊ณ ์นจ๊ณผ ๊ฐ์ด ๊ฐฑ์ ๋ฒํผ์ ๋๋ฅด๋ฉด ํ๋ฉด์ด ๊ฐฑ์ ๋ ๋์ ๋ฒํผ์ด ๋๊ณ ๊ฐฑ์ ํ ๋ฉ์ถ๋ ์ ๋๋ฉ์ด์ ์ ๋ณผ ์ ์์๊ฒ๋๋ค. ์ค๋์ ๊ทธ๊ฑฐ์ ๋ํด ๊ฐ๋จํ ๋ช๊ฐ์ง๋ฅผ ์์๋ณด๋ คํฉ๋๋ค๐ ๊ทธ๋ผ ์ค๋์ ์์ ๋ SwiftUI๋ก ๋ฆฌํ๋ ์ฌ ์ด๋ฏธ์ง๋ฅผ ๋๋ฆฌ๋ ์ ๋๋ฉ์ด์ ์ผ๋ก ํ์ตํด๋ณผ๊ป์! ์ด๋ฏธ์ง 1ํ์ ํ๊ธฐ ์ด๋ ๊ฒ ์ด๋ฏธ์ง๋ฅผ ํ๋ฐํด๋ง ๋๋ฆฌ๊ณ ๋ฉ์ถ๋ ์ฝ๋๋ฅผ ๋ณด์์ฃ ! import SwiftUI struct ContentView: View { @State private var isAnima..
-
RxSwift - Time Based OperatorRxSwift 2021. 11. 17. 20:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ Time Based Operator์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐๐ป ์ฌํ๊น์ง ๊ทธ๋ฌ์ง๋ง RxSwift์ ์์ฐจ์ ์ธ ํ์ต์ ์๋ ๋งํฌ๋ฅผ ๋ฐ๋ผ ์งํํ๊ณ ์์ต๋๋ค. ์๋ง๋ ํฐ ๋จ๋ฝ์์ ์คํผ๋ ์ดํฐ์ ๋ํ ํ์ต์ ์ด๋ฒ ํฌ์คํ ๊น์ง์ผ๊ฒ ๊ฐ์ต๋๋ค! GitHub - fimuxd/RxSwift: RxSwift๋ฅผ ์คํฐ๋ํ๋ ๊ณต๊ฐ RxSwift๋ฅผ ์คํฐ๋ํ๋ ๊ณต๊ฐ. Contribute to fimuxd/RxSwift development by creating an account on GitHub. github.com Time Based Operator? ์ง์ญํ์ฌ ์๊ฐํ๋ฉด ์๊ฐ์ ๊ธฐ๋ฐํ ์คํผ๋ ์ดํฐ ์ ๋๋ค. ์๊ฐ์ ๊ธฐ๋ฐํ๋ค.. Rx์์ ์๊ฐ ํ๋ฆ์ ๋ฐ๋ผ ๋ฐ์ดํฐ๊ฐ ๋ค์ด์ค๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์ด ๊ด๋ จ..
-
RxSwift - Combining OperatorRxSwift 2021. 11. 12. 22:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ Combining Operator์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐๐ป Combining Operator? ์ปด๋ฐ์ธ ์ฆ ๊ตฌ์ฑํ๊ณ ์กฐ์งํ๋ค๋ ์๋ฏธ๋ก ์ด๋ฒ์ ์์๋ณผ ์คํผ๋ ์ดํฐ๋ ์ต์ ๋ฒ๋ธ์ ๋ฐ์ดํฐ๋ฅผ ๋ณํฉํด์ค๋๋ค. ์ด์ ์ ๋ธ๋ก๊ทธ์์ ์ค๊ตฌ๋๋ฐฉํ๊ฒ concat, merge ๋ฑ ์ต์ ๋ฒ๋ธ ์ํ์ค๋ฅผ ๋ณํฉํด์ฃผ๋ ํ์ต์ ํด๋ณธ์ ์์ต๋๋ค. ์ด๋ฒ์๋ ์๋ ๋งํฌ๋ฅผ ํตํด ์กฐ๊ธ ๋ ์ฒด๊ณ์ ์ผ๋ก ๊ตฌ๋ถํ๊ณ ์์๋ณด๋ คํฉ๋๋ค๐ GitHub - fimuxd/RxSwift: RxSwift๋ฅผ ์คํฐ๋ํ๋ ๊ณต๊ฐ RxSwift๋ฅผ ์คํฐ๋ํ๋ ๊ณต๊ฐ. Contribute to fimuxd/RxSwift development by creating an account on GitHub. github.com startWith(_:)..
-
RxSwift - Transforming OperatorRxSwift 2021. 11. 10. 20:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ ์ด์ Filtering Operator์ ์ด์ด Transforming Operator์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐๐ป Transforming Operator? ๋ณํํด์ฃผ๋ ์คํผ๋ ์ดํฐ! ์ด๋ค๊ฒ์ ๋ณํํด์ค๊น์? ์ต์ ๋ฒ๋ธ๋ก ๋ถํฐ ๋ฐฉ์ถ๋ ๊ฐ๋ค์ ๋ค๋ฅธ ํํ๋ ๋ณํ๋ ๊ฐ์ผ๋ก ๋ณํ๋ฅผ ์ฃผ๊ณ ๋ฐฉ์ถํ๋ ์คํผ๋ ์ดํฐ์ ๋๋ค๐ค๐ป ๊ทธ๋ผ ๋ฐ๋ก ์๋์์ ์ฌ๋ฌ๊ฐ์ง Transforming Operator๋ค์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค๐๐ป toArray ์๋ฐ ํํ๋ฅผ ๋๋๋ค. ์์๋ค์ ํ๋์ ์ด๋ ์ด๋ก ๋ฌถ์ด์ฃผ๋ ์คํผ๋ ์ดํฐ์ธ๊ฒ ๋ฑ ๋ณด์ด์ฃ ? ๊ทธ๋ผ ์ฝ๋๋ก ์ด๋ป๊ฒ ์ฌ์ฉ๋๋์ง ๋ณด๊ฒ ์ต๋๋ค. let disposeBag = DisposeBag() Observable.of(1, 2, 3, 4, 5, 6) .toArray() .su..
-
RxSwift - Filtering OperatorsRxSwift 2021. 11. 8. 09:56
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ RxSwift์ Filtering Operator๋ค์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐๐ป Filtering Operator? ์ด๋ฆ์์๋ถํฐ ์ด๋ค๊ฑด์ง ๋๋์ด์ค์ฃ ? ํํฐ๋ฅผ ํด์ฃผ๋๊ฒ๋๋ค. ์ด๋ค๊ฑธ ํํฐ๋ฅผ ํด์ฃผ๋? next ์ด๋ฒคํธ๋ฅผ ํตํด ๋์ด์จ ๊ฐ๋ค์ ๋ํด ํํฐ๋ฅผ ํด์ค๋๋ค. ์ฆ ํด๋น ์คํผ๋ ์ดํฐ๋ฅผ ํตํด ๋์ด์จ ๊ฐ๋ค์ ๋ํด ๋ค ์ฒ๋ฆฌํ์ง ์๊ณ ์ํ๋ ๊ฐ๋ง ๊ณจ๋ผ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค๐ Filtering Operator ์ข ๋ฅ ํฌ๊ฒ 4๊ฐ์ง์ ์ข ๋ฅ๋ก ๋๋ ๋ณผ ์ ์์ต๋๋ค. 1. Ignoring Operator 2. Skipping Operator 3. Taking Operator 4. Distinct Operator ๊ทธ๋ผ 4๊ฐ์ง ์ข ๋ฅ๊ฐ ์๋ค๊ณ ํ์ผ๋ ํ๋์ฉ ์์ธํ๊ฒ ์ด๋ค ์คํผ๋ ์ดํฐ๋ค์ ๋ด๊ณ ์๋์ง ..
-
RxSwift - SubjectRxSwift 2021. 11. 3. 22:09
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ข ์ด๋ฒ ํฌ์คํ ์์๋ ์ ๋ฒ RxSwift์ ์ฒซ๋ฒ์งธ ํ์์๋ Observable์ ์ด์ด Subject๋ฅผ ์์๋ณด๊ฒ ์ต๋๋ค๐๐ป ์ด์ ํฌ์คํ ์์ Observable์ ํ์ตํ๋ฉด์ ์ด๋ฒคํธ๋ฅผ ๋ง๋ค๊ณ ๊ตฌ๋ ๋ฐ disposeํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ดค์ต๋๋ค. ๋ค์ ๋งํ์ง๋ง ์๋ ๋งํฌ์์ ํ์ต์ ํ๊ณ ์์ต๋๋ค๐ง https://github.com/fimuxd/RxSwift/blob/master/Lectures/03_Subjects/Ch3.%20Subjects.md ๊ทธ๋ฐ๋ฐ ๋ง์ ์ฝ๋์์๋ ์ค์๊ฐ์ผ๋ก ์ด๋ฒคํธ๋ฅผ ์ถ๊ฐํ๊ณ ๋ฐฉ์ถํ๋๊ฒ์ ํ ์ ์์ด์ผํฉ๋๋ค. ์ด๋ฅผ ์ํด Subject๋ผ๋ ๊ฐ๋ ์ด ๋์์ต๋๋ค. ๊ทธ๋ผ ์์ธํ ์์๋ณผ๊ป์๐ Subject? Observable์ด์ Observer์ธ ๊ฒ์ Subject๋ผ ํฉ๋๋ค. ..