2015년 11월 5일 목요일

Swift 2.0을 사용해서 외부 라이브러리 형태로 만들어서 xCode 7.1에서 사용하는 경우 - 워크 스페이스 사용에 대한 데모

비주얼스튜디오에는 솔루션이란 개념이 있고 xCode에도 비슷한 개념으로 Workspace가 있습니다. 
아래와 같이 데모를 통해 살펴볼 수 있습니다. 


1. Workspace를 먼저 생성한다. DemoWorkspace로 생성한다.

2. 네비게이터 영역에서 화면 하단에 있는 + 아이콘을 클릭해서 New Project를  선택한다.

3. iOS의 Cocoa Framework을 선택한다.
                

4. MyComp라고 이름을 입력한다. 프로젝트에 새로운 스위프트 파일을 추가한다. DemoTime이라는 이름을 부여한다.
//
//  DemoTime.swift
//  Demo
//
//  Created by Jong duk Kim on 2015. 8. 11..
//  Copyright (c) 2015년 multicampus. All rights reserved.
//
import Foundation

public class DemoTime {
    private var hour = 0, min = 0
    var Hour: Int {
        get { return hour }
        set { hour = newValue }
    }
    var Min: Int {
        get { return min }
        set { min = newValue }
    }
   
    public init(hour:Int, min:Int) {   //전항목 생성자는 사용할 수 없다.
        self.hour = hour; self.min = min
    }
    public func add(min:Int) {         //mutating은 기술하지 않는다.
        let m = self.min + min
        if m >= 60 {
        self.min = m % 60
        let t = self.hour + m / 60
        self.hour = t % 24
    } else {
        self.min = m
        }
    }
    public func inc() {
        self.add(1)
    }
    public func description() -> String {
        let h = hour < 10 ? "0\(hour)" : "\(hour)"
        let m = min < 10 ? "0\(min)" : "\(min)"
        return h + ":" + m
    }
}

5. 네비게이터 영역에서 화면 하단의 + 버튼을 클릭하고 New Project를 클릭한다. iOS의 싱글뷰를 선택한다. 이 경우 위치를 주의해서 지정해야 한다. Add to를 MyWorkspace로 하고 Group도 MyWorkspace로 변경해야 한다. 이름은 MyClient로 한다.
 


그러면 아래와 같은 모양으로 들어간다.

            

6. MyComp.framework을 추가한다. MyClient에서 Linked Framework & Libraries에서 +를 클릭하고 워크스페이스 안에 있는 MyComp.framework을 선택한다.

7. MyComp을 임포트하고 아래와 같이 코딩한다. ViewController.swift에 추가한다.

import UIKit
import MyComp

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        var t1 = DemoTime(hour: 11, min: 12)
        print(t1.description())
    }

7. 실행하기 전에 상단의 스킴을 변경해서 MyClient가 실행되도록 조정해야 한다.
 
















댓글 없음:

댓글 쓰기

참고: 블로그의 회원만 댓글을 작성할 수 있습니다.

아이폰 듀오에 대응하는 데모 #2

폴더블·듀얼 화면 iPhone Duo를 대상으로, SwiftUI 수업에서 순서대로 사용할 수 있는 데모 10개를 구성했습니다. 각 데모는 학습 목표 → 코드 → 단계별 설명 → 확인 과제 순서입니다. Apple 공식 안내에 따르면 Duo의 전체 화면...