WooKoo Blog

물과 같이

분류 전체보기 123

[iOS] - 화면 탭 후 좌표 얻기와 그 자리에 도형 그리기

다양한 방법이 많겠지만 Tap Gesture Recognizer를 사용해서 해보겠다. 먼저 스토리보드에 Tap Gesture Recognizer를 추가해주고 액션을 ViewController에 추가해준다. 그 후 handleFrontTap() 메소드를 작성해주자. func handleFrontTap(gestureRecognizer: UITapGestureRecognizer){ if gestureRecognizer.state == UIGestureRecognizer.State.recognized { let location = gestureRecognizer.location(in: gestureRecognizer.view) print(gestureRecognizer.location(in: gestureRec..

개발/개발 2020.09.14

iOS - 공식 문서만으로 iOS 개발 배우기[Sungdoo님]

오늘은 따듯한 피드백을 주신 성두님께 감사드리단 말씀을 드리며 sungdoo님이 주신 글을 한번 읽고 정리해보도록 하겠습니다. sungdoo.dev/programming/start-ios-development-with-offical-docs/ 공식문서 만으로 iOS 개발 배우기 - Dev Story of Sungdoo iOS개발에 처음 발을 내딛은 분들에게는, 당장 "어디서 어떻게 배워야 하는지"만큼 시급하고도 중요한 질문이 없습니다. 좋은 유튜브 강좌나 블로그 튜토리얼 등을 보면 될까요? 하지만 그 유튜�� sungdoo.dev 처음은 Swift를 배워야겠죠? docs.swift.org/swift-book/GuidedTour/GuidedTour.html 가이드에 대한 플레이그라운드도 지원을 해주네요(다..

개발/개발 2020.09.14

iOS - Dispatch Queues[Zedd님]

오늘은 왜 UI 작업이 나타날 때는 main 쓰레드에서 처리를 해야만 하는가에 대해서 찾아보다가 또 Zedd님 글을 발견하고 읽어보면서 정리를 해볼까 합니다. 항상 감사합니다 zeddios.tistory.com/513 iOS ) Concurrency Programming Guide - Dispatch Queues 안녕하세요 :) Zedd입니다. 오늘은 Concurrency Programming Guide의 Dispatch Queues부분을 해볼게요!! 드디어 익숙한게 나왔........거의 모두들 GCD를 쓰실텐데..... Dispatch Queues Grand Central Dispatch.. zeddios.tistory.com Grand Central Dispatch(GCD) 는 task 수행을 위한..

개발/개발 2020.09.11

[SwiftUI] - Overlay, Background (겹치기, 중첩, 쌓기)

앞에서 포스팅 했던 ZStack 말고도 뷰를 겹치는 방법이 여러가지가 있는데 먼저 Overlay를 보도록 하겠다. Rectangle().fill(Color.green).frame(width: 150, height: 150) .overlay( Rectangle().fill(Color.yellow) ) // 뷰 중첩 오버레이, 크기 안정하면 동일해서 겹침 초록색 사각형을 먼저 그린뒤 overlay를 사용하면 덮어씌운다. 따로 크기를 지정하지 않는다면 기존의 뷰와 같은 크기를 만든다. 다른 방법으로는 Background가 있다. Background는 우리가 보통 뒷배경의 색을 바꿀 때 사용했었는데 실제로는 뷰의 하위 계층에 쌓아가는 것이다. Rectangle().fill(Color.green).frame(wi..

개발/개발 2020.09.09

[SwiftUI] - StackView 조합해보기

위와 같은 UI를 구성하려고한다. 전체코드 var body: some View { VStack{ Text("도형 만들기").font(.largeTitle).fontWeight(.heavy) HStack{ Text("둥근모양").font(.title) Spacer() } ZStack{ Rectangle().frame(height: 10) HStack{ Circle().fill(Color.yellow) Ellipse().fill(Color.green) Capsule().fill(Color.orange) RoundedRectangle(cornerRadius: 30).fill(Color.gray) } } HStack{ Text("각진 모양").font(.title) Spacer() } ZStack{ Rectan..

개발/개발 2020.09.08

[SwiftUI] - StackView 스택뷰

UIKit의 UIStackView는 선택적인 요소 였다면 SwiftUI의 Stack은 거의 필수적인 요소이다. 여러개의 컨텐츠를 표현할 때 반드시 사용해야한다. HStack, VStack, ZStack이 있다. HStack{ Rectangle() .fill(Color.green) .frame(width: 150, height: 150) Rectangle() .fill(Color.yellow) .frame(width: 150, height: 150) } Horizontal Stack의 모습이다. Vstack 이런 모습이다! 그럼? ZStack은??? 깊이 스택이기때문에 초록색을 노란색 사각형이 덮은 모습이라 안보이는 것이다. offset으로 확인해보면 정말 그런지 볼 수 있다. ZStack{ Rectang..

개발/개발 2020.09.07

[SwiftUI] - SF Symbols 아이콘

SF Symbols은 내장된 아이콘으로서 약 1500개 가량의 아이콘을 지원해주고 크기 및 색을 변경 할 수 있다. 설치해서 사용하는 것입니다. SF Symbols 공식 문서 https://developer.apple.com/design/human-interface-guidelines/sf-symbols/overview/ SF Symbols - SF Symbols - Human Interface Guidelines - Apple Developer SF Symbols SF Symbols provides a set of over 2,400 consistent, highly configurable symbols you can use in your app. Apple designed SF Symbols to i..

개발/개발 2020.09.06

[SwiftUI] - RenderingMode 렌더링 모드

이미지에는 template과 original 2가지의 렌더링 모드가 있다. template - 이미지의 불투명 영역이 가진 본래의 색 무시하고 원하는 색으로 변경해 템플릿 이미지로 활용 original - 항상 이미지 본래의 색 유지 HStack{ Image("SwiftUI") Image("SwiftUI").renderingMode(.original) Image("SwiftUI").renderingMode(.template) }.foregroundColor(.red) 모든 하위 이미지를 red로 적용하는데 template 이미지만 적용된다.

개발/개발 2020.09.04

[SwiftUI] - AspectRatio 너비 높이 배율

기본전제는 ContentMode를 적용하고 난 후이다. HStack(spacing: 30){ Image("SwiftUI").resizable().aspectRatio(CGSize(width: 1.6, height: 1),contentMode: .fit) .frame(width: 150, height: 150) Image("SwiftUI").resizable().aspectRatio(0.7, contentMode: .fill).frame(width: 150, height: 150) .clipped() } 첫번째 이미지는 컨텐츠 모드 적용 후 너비가 높이보다 1.6배 비율을 가지도록 조정 두번째이미지는 컨텐츠 모드 적용 후 너비가 높이보다 0.7 비율을 가지도록 조정하는 것이다. Clipped()은 프레임 ..

개발/개발 2020.09.04