Giter VIP home page Giter VIP logo

swiftcrafts's Introduction

🍎 SwiftCrafts

Crafts created through the journey of learning UIKit & SwiftUI

1. LoginView(UIKit) - 2023/10/11

  • 코드만으로 로그인 화면 UI 만들기(NSLayoutConstraint로 정리)
  • 텍스트필드 동작 감지 UI 변경(addTarget)
  • selector, @objc 어노테이션, UITextFieldDelegate extension
  • UIAlertController로 alert창 띄우기
  • 새로운 scene 객체가 앱에 추가될 때마다 호출되는 SceneDelegate의 willConnectTo
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 25 18 Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 25 42

2. BIMCalculator(UIKit) - 2023/10/12

  • UIStackView를 활용한 레이아웃 구성
  • 텍스트필드 동작 감지 UI 변경(addTarget)
  • UITextFieldDelegate 프로토콜을 활용하여 텍스트 필드의 행동(키보드 return) 관리
  • BMI 계산 및 결과 화면 전환:사용자가 입력한 키와 몸무게 값을 바탕으로 BMI를 계산하고, 그 결과를 다른 뷰 컨트롤러(ResultViewController)에 전달하여 결과를 표시
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33 Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 22 30

3. WarmUp(SwiftUI) - 2024/01/13~2024/01/14

  • SwiftUI 입문 With fastcampus😀
  • VStack, HStack, Image, Button등의 기본 구성 요소들을 활용하며 레이아웃 그리기 연습
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33 Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 22 30

4. WarmUp(SwiftUI) - 2024/01/14

  • ListView를 통해 적용하는 데이터 모델링
  • ⭐️Hashable, NavigationStack, List, ForEach, Section⭐️
  • ⭐️@State와 Binding 데이터의 상태를 나타내는 State, State에 $를 붙이면 Binding
  • (두 State가 연결되어있을때 = 바인딩되어 있을때) 화면 재빌드!
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33 Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 22 30

5. WarmUp(SwiftUI) - 2024/01/14

⭐️Navigator&TabView

Modal

  • @Binding, @State, Button.sheet(isPresented: $showModal)

Navigation

  • 키워드는 NavaigationStack(위에 쌓인다), NavigationLink로 이동
  • toolbar-ToolBarItem을 통한 이동

TabView

  • 다양한 내용이 하나의 앱에 들어가야 할 때 화면을 구상후 탭을 나눈다(one 탭 = one 화면)
  • TabView{ View1.badge(1). tabItem{}}.tabViewStyle

if let 구문을 통한 옵셔널 바인딩(memo 참고)

Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 22 30

6. WarmUp(UIKit) - 2024/01/14~2024/01/15

  • View와 ViewController
  • 오토레이아웃
  • TableView(Delegate, Datasource)
  • NavigationController, Segue(아직 흡수X)
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33

7. VoiceMemo(SwiftUI) - 2024/01/14~

1. Onboarding(01/14~01/15)

  • VoiceMemo App clone with SwiftUI
  • PropertyWrappers가 MVVM에서 어떻게, 왜 쓰이는지
  • Onboarding 구현을 통한 UI, Property Wrappers, NavigationStack
  • 나머지는 PropertyWrappers.md 참고
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33

2. TodoList(01/16~01/17)

  • To do list 구현하기
  • DatePicker를 통한 date, time calendar 설정(graphical 예쁘다)
  • alert(@State-Binding, 삭제/취소)
  • @EnvironmentObject를 포함한 property Wrapper 사용 적응하기
  • Components? components.md 참고
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33

swiftcrafts's People

Contributors

puretension avatar

Watchers

 avatar

swiftcrafts's Issues

Assets with SwiftUI

Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 21 33
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 22 30

Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 25 18
Simulator Screenshot - iPhone 15 Pro - 2024-01-14 at 00 25 42

스크린샷 2024-01-14 오전 12 18 30
스크린샷 2024-01-14 오전 12 18 58

스크린샷 2024-01-14 오전 4 26 34
스크린샷 2024-01-14 오전 4 26 23

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-01-14.at.15.19.14.mp4

Simulator Screenshot - iPhone 15 Pro - 2024-01-15 at 23 34 23

Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-01-16.at.04.11.11.mp4
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-01-17.at.02.21.53.mp4

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.