[Swift3] Tinder UI라이브러리 사용하기

2016-09-06
18 Views
  • 개발환경 기준: Swift 3.0 with Xcode 8
  • 사용 라이브러리: MDCSwipeToChoose 

1. Xcode로 프로젝트 만들기

Single View Application으로 간단하게 TinderUIExam이라는 프로젝트를 만들어보자.

2. Cocoapods를 통해 라이브러리를 추가하기

Xcode에서 프로젝트를 만든후 터미널을 열고 프로젝트 루트디렉토리로 이동한다.

을 실행하면 Podfile이 만들어진다. 그럼 다음으로 vi키워드를 사용하여 편집기 상태로 열고 아래 코드를 입력한다.

위와 같이 작성하고 아래 명령어를 실행하여 라이브러리를 추가 설치한다.

설치가 완료되면 다음단계로 진행한다.

3. BridgeHeader파일을 생성하고 설정하기

Xcode에서 새파일 추가를 할때 “Header File”을 선택하고 파일명은 [BridgeHeader.h]파일명으로 추가한다.

그리고 추가된 헤더파일을 열고 아래 코드를 추가한다.

다음으로 Xcode 프로젝트 설정에서 Building Settings 가져오기를 설정해주자. 이 말은 BridgeHeader.h를 읽어들여 추가한 라이브러리가 Swift기반 프로젝트에서 동작하도록 해야 한다.

Xcode 왼쪽 사이드바에서 프로젝트파일을 선택하고 Build Settings를 열고 “Swift Compiler – Code Generation”항목에서 [Objective-C Bridging Header]항목에 “<프로젝트명>/BridgeHeader.h”를 입력한다.

tenderui-1

이제 프로젝트에 추가한 Objective-C언어로 만들어진 라이브러리를 사용할 수 있는 상태가 되었다. 아래와 같이 ViewControlller.swift파일에 Tinder UI가 작동되는 소스코드를 작성해보자.

참고로 이 앱을 실행시 사용중인 이미지 URL은 https를 사용하는 URL을 사용하여 ATS를 기준으로 작성되었기 때문에 http기반 URL을 사용하여 동작하지 않기 때문에 주의하자. (http기반 URL을 사용하도록 할 경우 무엇을 해야하는지 독자가 알아보자! 숙제!)

tinder-ui1 tinder-ui2

좌우로 스와이프할 때마다 상단에 텍스트가 표시되고 앞의 이미지가 사라진다.

단어장같은 앱을 만들때 유용하다.

[앞에서 숙제로 내드린 ATS설정관련 내용에 대한 정답은 아래와 같다.]

HTTP기반 URL을 사용할 경우 오류가 발생하기 때문에 Info.plist파일을 선택하고 [App Transport Security Settings를 추가하고 하위 속성으로 [Allow Arbitrary Loads]를 추가한후 속성값을 [YES]로 변경한다. 이렇게 속성을 신규로 추가하면 HTTP기반 URL도 사용할 수 있게 된다.

ats

Facebook Comments

You may be interested

[Swift3] 폐쇄(Closure)에 대해 살짝 이해할 수 있는 팁
Swift 3.0
shares11 views
Swift 3.0
shares11 views

[Swift3] 폐쇄(Closure)에 대해 살짝 이해할 수 있는 팁

MJ Kim - 4월 29, 2017

몇몇 개발자를 만나 개발을 하다보면, 폐쇄(Closure)에 대해 이해를 하지 못해서 간단하게 바로 이해할 수 있는 팁을 정리해본다. 앱을 개발하다보면 https통신을…

[Swift3] UITextview의 keyboard 닫기
Swift 3.0
shares2 views
Swift 3.0
shares2 views

[Swift3] UITextview의 keyboard 닫기

MJ Kim - 4월 29, 2017

스토리보드에서 델리게이트를 선언하고 class에 UITextViewDelegate를 상속받아서 delegate=self를 viewDidLoad에서 설정하면 간단하게 해결되는데 가끔 헷깔려 하는 경우가 있어 적어본다. [crayon-590574b871aff458029768/] [crayon-590574b871b04145256172/] [crayon-590574b871b06032236633/]…

스토리보드에서 다국어 지원 및 Xcode 8.3이상에서 이슈
Swift 3.0
shares5 views
Swift 3.0
shares5 views

스토리보드에서 다국어 지원 및 Xcode 8.3이상에서 이슈

MJ Kim - 4월 29, 2017

다국어 지원은 우선 Localizable.strings파일을 생성한 다음 언어를 지정한다. 그리고 필자가 자주 사용하는 일부 컨트롤들에 대한 확장(extension)을 추가한 다음 스토리보드에서 사용하는…