728x90

Swift 39

[Swift] discardableResult 에 대해 알아보자!

개발을 하다 보면 여러가지 함수를 만들게 되는데 한 함수에 대해서 상황에 따라 쓰게되면 return 값이 필요한 경우가 있고 또 필요 없느 경우가 있습니다. 그럴때 Swift 에서 주로 사용하는 방법이 변수를 설정하지 않거나 @discardableResult 를 사용해서 해결하곤 합니다. 이번 글은 그 중에 discardableResult에 대해 간단히 알아보고자 합니다. 1. 변수를 설정하지 않고 사용해보기 우선 간단한 함수를 만들어 보겠습니다. 단순히 10과 20을 더하는 함수입니다. let a = 10 let b = 20 func sum() -> Int { return a+b } 여기서 함수만을 반환값을 받지 않고 함수 내부만 실행하고 싶을 경우 아래와 같이 사용하실 수 있습니다. let _ = s..

Swift/정보 공유 2021.12.08

[Swift] 정규표현식에 대해

이번 글에서는 swift의 정규표현식의 자세한 설명이 적힌 블로그의 글을 읽고 소개해드리려고 합니다. 여러 가지 블로그에서도 다루고 있는 주제였지만 제가 학습하기 좋았던 블로그는 여기였던 것 같습니다. 간단히 사용법만 적힌 것이 아니고 그 의미까지 설명해주고 있어 정말 쉽게 이해할 수 있었습니다. 1. 참조 URL https://baked-corn.tistory.com/136 [Swift] Swift에서 정규표현식 사용하기 [Swift] Swift에서 정규표현식 사용하기 저는 지금까지 텍스트 필드 위에 입력되는 사용자의 입력이나 텍스트 덩어리에서 원하는 패턴의 값을 뽑아내거나 검증을 할 때 항상 모든 경우에 대해 if-els baked-corn.tistory.com 2. 생각 정리 이번 글에서는 설명이 ..

Swift/참조 URL 2020.08.06

[Swift] iOS 로컬라이징을 한 번 알아보자!

이번 글에서는 로컬라이징에 대해서 알아보겠습니다. 로컬라이징이란 간단히 설명해드리자면 현지화, 즉 다국적 버전으로 제작하여 여러 나라에서 대응이 가능한 것을 나타냅니다. 개인적으론 App도 많이 국제화가 되어있기 때문에 외국인들도 사용하기 편하게 하기 위해서는 필수적인 요소라고 생각합니다. (저 같은 경우는 지금까지 참여한 App 전부가 이 로컬라이징을 진행하였습니다.) 그렇다면 이번 글을 통해서 어떤 식으로 하면 되는지 간단히 알아보고자 합니다. 1. Localizable.strings 파일 생성 우선 프로젝트 생성 후 Strings 파일로 Localizable.strings 파일을 추가해 줍니다. 2. 언어 추가 이제 언어를 추가해보는 작업을 진행해 보겠습니다. 우선 추가한 Localizable.st..

Swift/정보 공유 2020.06.23

[Swift] iOS App의 LifeCycle에 대하여 알아보자!

이번 글에서는 App의 생명 주기에 대하여 알아보겠습니다. 저도 어떤 식으로 동작하는지 잘 몰라 이번 기회로 많은 것을 알아볼 수 있는 기회가 되었습니다. App의 생명 주기란? App이 실행되어 종료까지의 과정이라고 합니다. 크게 App이 보이지 않는 상태인 Background상태와 App이 화면에 출력되어지고 있는 Foreground상태로 나눌 수 있습니다. 1. 앱 실행 그렇다면 App을 실행할 시 내부에서는 어떠한 동작이 진행되고 있는지 한 번 알아보겠습니다. UIApplication의 생성 Event Loop 에서 발생한 여러 Event 를 감지, AppDelegate에 전달해 줍니다. @UIApplicationMain 어노테이션이 있는 클래스를 찾아 AppDelegate 클래스를 생성 프로젝트..

Swift/정보 공유 2020.06.22

[Swift] iOS ViewController의 LifeCycle에 대하여 알아보자!

이번 글에서는 ViewController의 생명 주기에 대하여 알아보겠습니다. 개발을 하면서 대충 어떤 식으로 움직이는지 어느 상황에 사용할지 정도는 알고 있었지만 정확히 어떠한 역할을 수행할 수 있는지 자세히 알아본 적은 없었던 것 같아 이번 기회에 알아보았습니다. 아래는 Apple Develop 에서 나타낸 ViewController의 생명 주기도입니다. Appearing -> Appered -> Disappearing -> Disappeared -> ... repeat와 같이 되어 있는 것을 보아서 크게 나타나는 중의 처리, 나타난 후의 처리, 사라지는 중의 처리, 사라진 후의 처리로 나뉘는 것을 알 수 있습니다. 그렇다면 이제 하나하나 어떠한 역할을 수행하고 어떠한 상황에 사용이 되는지 아래와 같..

Swift/정보 공유 2020.06.22

[Swift] UIActivityController에 대하여 알아보자!

이번 글에서 알아보고자 하는 것은 iOS 어플에서 공유 부분을 만들 때 사용하는 UIActivityController입니다. 보통 크게 공유하는 것으로는 1. 이미지 2. URL 3. 텍스트 4. 위의 혼합 등이 있습니다. 어떤 식을 사용하는 지 또 어떠한 기능을 제공하는지 간단히 알아보겠습니다. 1. 생성 생성에는 공유할 아이템(이미지, 링크, 텍스트 등) 과 커스텀 지원의 파라미터가 존재합니다. 이 두 파라미터는 nil을 사용하실 수 있습니다. let items: Array = [공유할 아이템] let activities: Array = [커스텀 액티비티] let activityVC: UIActivityViewController = UIActivityViewController(activityItems..

Swift/정보 공유 2020.06.08

[Swift] DispatchTimer를 사용해보자!

이번 글에서는 DispathTimer를 사용법에 대하여 알아보겠습니다. 임의의 시간 동안 처리, 몇 초뒤 실행 등 타이머 처리가 필요할 때 사용되는 방법 중 하나입니다. 코드를 보시면서 어떤식으로 진행되는지 확인해봅시다! 1. DispatchTimer 사용 예시 코드 이번에는 뭐 디자인이랄 것도 없기 때문에 디자인은 생략하고 바로 코드로 넘어가겠습니다. 아 이번에 디자인에 대해서는 IBOutlet이 아닌 tag를 사용했습니다. tag에 대해서는 다음에 알아보겠습니다. class ViewController: UIViewController { // 타이머 선언 private var timer: DispatchSourceTimer? // 횟수 private var count = 0 // 버튼 생성 privat..

Swift/정보 공유 2020.06.05

[Swift] 아날로그 시계 어플을 만들어보자!

이번 글에서는 무엇을 만들어볼까 생각을 하다가 디자인도 같이 공부할 수 있는 것으로 생각하다가 아날로그시계를 생각해내게 되었습니다. 아날로그시계의 좋은 점은 디자인도 공부할 수 있고 수학적인 계산 그리고 애니메이션도 만져볼 수 있어 여러 가지 방면에서 공부가 될 것 같습니다. 크게 어렵지 않기 때문에 하나하나씩 따라하시면서 만들어 보시면 됩니다. (사용한 이미지는 무료 템플릿을 다운 받아 직접 웹 용 포토샵으로 수정하였습니다.) 1. 디자인 이번 프로젝트에서는 좀 더 확실한 공부를 하기 위해서 다양한 단말에도 맞춘 레이아웃을 구성해 보았습니다. 앱 개발 디자인에 있어서 다양한 단말에 맞추는 것이 중요하기 때문에 어떻게 구성할지 생각하면서 하나하나씩 만들어 나아가면 됩니다. 저와 같은 경우는 아래와 같이 ..

Swift/데모 개발 2020.06.01

[Swift] MapView를 클릭했을 때 해당 위치의 주소를 알아내보자!

이번 글에서 만들어 보고자 하는 것은 MapKit을 사용하여 지도의 임의의 위치를 클릭했을 때 해당 위치의 주소를 추출해 보는 App을 만들어 보겠습니다. 일일이 주소를 입력해서 찾는 것보다 그 위치를 한 번의 클릭만으로 주소를 얻어 보고 싶을 때 한 번 사용해보면 좋을 것 같습니다. 특별한 알고리즘을 사용하지 않기 때문에 만드는 데는 큰 어려움은 없습니다. 1. 디자인 저는 간단히 MapView하나와 추출된 주소를 표시할 수 있는 라벨, 이 두 가지만 추가해 보았습니다. 2. 베이스 작성 맵의 임의의 위치를 클릭 했을 때이기 때문에 맵을 클릭할 수 있어야 합니다. 때문에 저는 Tap 제스처를 추가하였습니다. import UIKit import MapKit class ViewController: UIVi..

Swift/정보 공유 2020.05.25

[Swift] Swift UIAlertController를 외부 클릭으로 닫기

이번 글에서는 다이어로그 표시 부분 외를 클릭할 시 dismiss 되는 기능을 한 번 알아보겠습니다. 이 기능은 기본적으로 UIAlertController에서 제공하고 있는 기능이 아니기 때문에 UITapGestureRecognizer 를 사용하여 구현해 보겠습니다. 1. 프로젝트 생성 & 디자인 뭐 솔직히 이번 기능에는 디자인이라고 할 건 없습니다. 그냥 간단하게 버튼 하나만 구현하여 보겠습니다. 2. 코드 class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() } @IBAction func didTappedButton(_ sender: UIButton) { let alert = UIAlertCo..

Swift/이슈 대응 2020.05.22
728x90