목록전체 글 (119)
BOID

안녕하세요, HoonIOS입니다. SwiftUI에서 Button 사용자의 탭 이벤트를 통해 특정 작업을 할 수 있게 기본적으로 제공하는 컨트롤러입니다. 즉 UIKit에서는 UIButton하고 같은 역할을 하는 친구라고 생각을 하시면 더 이해하기 쉬우실 거 같습니다. 애플 공식문서에서는 어떻게 정의하고 있는지 한번 확인해보겠습니다. 말 그대로 행동을 이니셜라이저해 컨트롤하는 거라고 쓰여있네요, 말 그대로 행동을 컨트롤한다! 이거입니다. 버튼의 생성자는 모두 2가지 매개변수를 정의를 하고 있습니다. 한 개는 버튼의 외형을 구분해주는 거고 다른 하나는 이벤트가 발생했을 때의 처리를 해주는 코드입니다. 이해가 안 되실 수 있으니 아래 버튼한개를 생성해보겠습니다. var body: some View { VStac..

안녕하세요, HoonIOS입니다. 저번에는 스택을 이용하여 레이아웃을 짜 봤습니다. 이번에는 Spacer을 이용하여 레이아웃을 구성해보겠습니다. Spacer란? Spacer는 뷰 사이의 간격을 설정을 하거나 뷰의 크기를 확장할 때 사용되는 레이아웃입니다. 스택 밖에서 사용될 때는 부모 뷰가 제공하는 공간 내에 최대의 크기로 확장이 되고 하나의 뷰로 사용이 됩니다. 따라서 Spacer는 그때그때 크기가 달라지게 되겠죠? HStack, VStack에서 사용을 할 때는 시각적 요소가 제외되고 단지 공간을 차지하기 위한 역할로만 기능을 합니다. 만약 아무 콘텐츠 없이 혼자 단독으로 사용하게 되면은 뷰가 없는 거처럼 사용이 됩니다. 아래와 같이 Stack안에 색깔이 빨간색인 Spacer을 넣어주면 어떻게 표현이 ..

안녕하세요, HoonIOS입니다. :) SwiftUI에서 뷰의 레이아웃을 잡아주는 다양한 방법이 있는데 이번 포스팅에는 스택을 이용해 레이아웃을 잡는 방법에 대해 살펴보겠습니다. 스택 스택은 실제로 Storyboard, UIKit에서 사용하는 레이아웃입니다. 바로 UIStackView인데요, 실제로 SwiftUI에서 스택도 같은 역할을 한다고 생각하시면 더 이해하기 쉬울 수 있습니다. Storyboard를 사용해서 레이아웃을 구성할때는 굳이 UIStackView을 필수적으로 사용할 필요 없이 다른 방법을 이용해서도 구현을 할 수 있었는데요, SwiftUI에서는 거의 필연적(?)이라 매우 중요합니다. 스택의 특성 스택은 Content를 제네릭 매개 변수로 받아 자식 뷰로 표현하는 제네릭 구조체로 선언되어 ..

안녕하세요, HoonIOS입니다. UIKit에서 이미지를 표현할 때는 UIImage객체에 이미지를 만들어주고 해당 객체를 UIImageView에 넣어줘서 표현을 했습니다. 반면에 SwiftUI에서는 이렇게 복잡하게 진행하지 않고 바로 이미지를 넣어줘서 표현을 해줄 수 있습니다. 얼마나 간단해졌는지 비교해보겠습니다. //UIKit let image: UIImage = UIImage(named: "HoonIOS") UIImageView(UIImageView 객체).image = image //SwiftUI Image("HoonIOS") 엄청 간단하게 이미지를 표현해줄 수 있는걸 코드로 볼 수 있습니다! SwiftUI에서 image의 가장 큰 특징은 기본적으로 주어진 공간하고 상관이 없이 고유한 크기를 유지한..

안녕하세요, HoonIOS입니다. :) UIKit에서 사용하는 UILabel을 SwiftUI에서는 Text로 역할을 한다고 합니다. 근데 그렇다고 UILabel처럼 단순히 문자열만 표현하는 뷰가 아닙니다. 어떻게 다를까요? UILabel과 Text의 차이점은? UILabel은 단순히 단어 그대로 문자열을 화면에 표현해주는 역할을 합니다. Text는 단순히 표현만 하는 게 아니라 Button, Toggle, Picker 등등에서 그 UI들을 구성할 때 텍스트를 적용할 때 사용을 합니다. 그만큼 UILabel보다 더 광범위하다고 생각을 하시면 될것 같네요ㅎㅎ Text를 사용하는 방법 Text를 사용해 적용하려면 아래와 같이 Text 수식어를 적용해주면 됩니다. var body: SomeView { Text(..

안녕하세요, HooniOS입니다. 저번에는 간단한 SwiftUI에 대해 알아봤습니다. 이번에는 SwiftUI 기본 구조에 대해 살펴보겠습니다. SwiftUI 프로젝트 SwiftUI를 프로젝트를 만드는 방법은 아래 프로젝트를 새로 만들게 되면 나오는 창에서 아래 Interface를 SwiftUI로 설정해주고 만들어주면됩니다. 이렇게 프로젝트를 생성하게 되면 Stroyboard는 없고 아래와 같이 ContentView와 애셋 카탈로그가 추가된 것을 볼 수 있습니다. ※ 애셀 카탈로그는 StoryBoard로 개발할 때와 같이 개발 과정에서 이미지, Color를 넣어두고 활용할 수 있게 기능을 제공합니다. 이제 안에서 활용하는 것들을 한 개씩 한번 살펴보겠습니다. 캔버스(Canvas) 프로젝트 화면에서 우측에 ..

안녕하세요, HoonIOS입니다. 한동안 포스팅을 못했네요... 그렇다고 개발에 손을 놓고 있던 건 아니고 공부는 틈틈이 하고 있었습니다 :) 최근에 Apple에서 상당히 공을 들이고 있는 새로운 프레임워크인 SwiftUI프레임워크에 대해 공부를 하고 있습니다. 공부를 하면서 제가 모르는 부분, 생소한 부분에 대해 정리및 공유를 하려고 합니다. 자 그럼 SwiftUI가 무엇인지 한번 알아봐야겠죠? SwiftUI란? 애플에서 2019년 6월에 있었던 WWDC 2019에서 발표한 프레임워크입니다. 애플은 처음 SwiftUI를 발표하면서 아래와 같은 슬로건과 함께 발표를 했습니다. "The Shortest Path to a Great App" "Less code, Better code, EveryWhere" ..

안녕하세요, 저번 1탄에 이어서 이번에도 string관련 메서드 프로퍼티에 대해 포스팅을 하려고 하는데요. 이번에는 기본 문자열에 문자열, 문자를 추가하는 것에 대해 포스팅해보겠습니다. String 관련 기본 프로퍼티, 메서드 .append(String) 공식문서에서는 기본 string인 문자열에 매개변수로 입력한 string을 뒤에 합치는 것입니다. 한번 예시를 살펴보겠습니다. test라는 변수에 빈 문자열 배열을 추가해줬습니다. .append()라는 메서드를 통해서 기본 빈 문자열에 appendString을 추가해줬습니다. 결과를 보겠습니다. test라는 빈 문자열이 있는 변수에 appendString 문자열을 추가해 줬기 때문에 결괏값은 appendString이 되었습니다. .append()메서드는..