728x90

전체 글 116

[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

LeetCode1450. Number of Students Doing Homework at a Given Time

1. 문제(원본) Given two integer arrays startTime and endTime and given an integer queryTime. The ith student started doing their homework at the time startTime[i] and finished it at time endTime[i]. Return the number of students doing their homework at time queryTime. More formally, return the number of students where queryTime lays in the interval [startTime[i], endTime[i]] inclusive. Example 1: In..

알고리즘/해결 2020.05.18

[Swift] Set에 대하여

이번 글에서는 Set에 대하여 알아보겠습니다. Swift에서의 데이터를 관리하는 타입 중 하나인 Set은 Dictionary와 같이 데이터의 순서를 보장할 수는 없지만 중복을 허용하지 않는다는 기능을 가지고 있습니다. 간단히 예를 보시면서 하나하나 어떻게 사용하는지 한번 알아보겠습니다. 1. 생성 우선 생성 방법은 다른 Array나 Dictionary와 비슷합니다. 다만 변수의 타입을 Set으로 설정한 후에는 초기 설정이 필요함으로 주의해주시면 됩니다. // 초기 설정 없이 생성 var setTest = Set() var setTest1: Set = [] var setTest2: Set = [] // Hashable 데이터 타입을 설정해 주어야 합니다. // 초기 설정 동시에 생성 var setTest1..

Swift/학습 2020.05.12

[Swift] SnapKit을 사용해보자!

이번 글에서는 SnapKit이라는 라이브러리에 대해서 알아보겠습니다. SnapKit은 뷰의 레이아웃 Constraints를 쉽고 간략하게 설정해줄 수 있는 기능을 가진 라이브러리입니다. (저도 프로젝트에서 몇 번 사용해보면서 많이 편리하다는 것을 느꼈습니다. ) 기존의 isActive설정보다 작성법이 간단하고 응용 또한 쉬워서 적응하는데도 오랜 시간이 걸리지 않습니다. 간단하게 예제를 만들어보면서 어떻게 사용하면 되는지 한 번 알아보겠습니다. 1. 프로젝트 생성 이번 프로젝트에서는 간단히 뷰와 버튼 두 가지만을 생성해서 버튼을 클릭시 뷰의 크기를 조정하는 정도의 앱으로 테스트해보겠습니다. 프로젝트의 도입은 역시나 Carthage로 진행하였습니다. (도입법에 대해서 잘 이해가 되지 않으신 분은 아래 글을 ..

[Swift] Swift - 싱글톤 패턴(Singleton)

이번 글에서는 swift에서의 싱글톤 패턴에 대하여 알아보겠습니다. 싱글톤 패턴이란? 간단하게 설명드리자면 하나의 객체를 생성하여 어디서든 참조하여 사용할 수 있게 하는 디자인 패턴 중의 하나입니다. 개발에 있어서도 자주 사용되는 패턴이기도 합니다. (저 같은 경우는 거의 대부분의 프로젝트에서 사용했었습니다. 예를 들어 Notification 관리 클래스라던가 Dialog 관리 클래스) 게다가 Swift 같은 경우는 구현하는 방법도 매우 쉽기 때문에 금방 따라 하실 수 있을 것입니다. 다만 주의해야하는 점은 하나의 클래스가 프로젝트 전역에서 활용되기 때문에 플래그를 사용하신다면 주의해서 관리를 해야 합니다. 영향력 또한 넓다는 것을 유의하시고 사용하시면 될 것 같습니다. 1. 클래스 생성 생성하는 방법은..

Swift/학습 2020.05.08

[Swift] Koloda를 사용해보자!

이번 글에서 소개해드릴 라이브러리는 Koloda입니다. Tinder View와 같은 기능을 제공하는 라이브러리입니다. 저도 흥미가 있어 찾아보면서 사용해 보았는데 생각 외로 구현이 잘 되어 있어 사용하는데도 큰 어려움은 없었습니다. 이번 글에서는 간단하게 만들어보고자 여러가지 아이템을 설정한 후 아이템을 선택할 시 배경의 색상을 변경해주는 정도의 App을 한번 만들어보겠습니다. 1. 도입 우선적으로 저는 이 라이브러리 도입을 Carthage를 통해 도입하였습니다. CocoaPods 같은 경우는 도입을 간단히 진행할 수 있지만 Carthage에서는 Koloda뿐만이 아니라 같이 다운로드되는 pop도 같이 도입하여야 합니다. 2. 디자인 디자인은 우선 카드를 설정하는 View하나 그리고 카드가 전부 소모되었..

동영상을 .gif 파일로 만들어보자!

가끔 개발 업무에 있어서 보고를 할 때 동작을 보여주고 싶을 때가 있습니다. 물론 직접 시연하는 방법도 좋지만 여의치 않을 때는 동영상을 많이 사용하는 것 같습니다. (버그나 수정 작업 등) 하지만 그 동영상마저도 지원하지 않는다거나 아니면 팀원이 gif 와 같은 움직이는 파일로 요구할 경우 미리 촬영해둔 동영상을 .gif 파일로 변환해주는 사이트가 있습니다. 이번 글에서는 사이트 공유와 간단한 사용법에 대해서 소개해드리겠습니다. 1. 사이트 https://ezgif.com/video-to-gif Online video to GIF converter Upload your video, select the part you want to convert and instanlty create a GIF in go..

Web용 포토샵으로 디자인 해보자!

개발에 있어서 빼놓을 수 없는 것이 바로 디자인이라고 생각합니다. 보통 프로젝트를 하면은 개발자와 디자이너가 각각 맡은 업무를 하는 경우가 많지만 상황에 따라서는 개발자도 간단한 디자인 정도는 할 줄 알아야 유연하게 프로젝트를 진행할 수 있다고 생각합니다. 뭐 예를 들어 진짜 간단하게 디자이너에게 받은 이미지의 사이즈가 안 맞는다던가 색상 등등 그렇다고 포토샵 프로그램을 설치하기는 과정이나 가격 등 생각할 것이 나름 있기 때문에 고민이 되기도 합니다. 사서 쓰자니 별로 사용하지도 않을 것 같고 그렇다고 다시 디자이너에게 요구하자니 시간이 걸릴 것 같고... 이번 글에서는 Web용 포토샵으로 유명한 pixlr에 대해서 소개해드리겠습니다. 조작법도 포토샵과 비슷해서 간단한 디자인 하기에는 매우 유용하다고 생..

728x90