Swifter {Swift Developer}

메뉴

아이폰을 USB메모리로 사용하는 예제

아이폰을 USB 메모리처럼 사용할 수 있는 앱 예제를 하나 만들어 보겠습니다.

1) 프로젝트를 생성하고 Project Navigator에서 [Supporting Files]-[info.plist]를 선택하고 속성 목록에서 [Add Row]를 선택하여 새 속성을 추가합니다.

  • Key: [Application supports iTunes file sharing]
  • Value: [YES]

ios-usb-storage1

 

2) 빌드를 해서 실제 폰이나 시물레이터로 실행해보고, iTunes를 열고 [App]탭을 선택하고 [파일공유]항목에서 만든 앱을 선택하면 [‘앱이름’의 도큐멘트]라는 화면이 나옵니다.

iphone-usb-storage2

3) 도큐멘트 하단에 있는 [추가]버튼을 눌러 저장할 파일들을 선택합니다.

iphone-usb-storage3

4) 파일이 추가되었다면 [동기화]버튼을 눌러 아이폰과 동기화를 합니다.  그런데 아무런 소스코드를 추가한 것이 없기 때문에 앱자체에서 목록을 확인할 수 없습니다. 간단하게 TableView를 사용하여 첨부된 파일들을 볼 수 있는 목록을 추가해봅시다.

5) Project Navigator에서 Main.storyboard 파일을 선택하고 화면에 [Table View]를 드래그하여 배치합니다. 배치한 다음 [Control]키를 누른 상태에서 테이블뷰를 아이콘으로 드래그하고 dataSource와 View Controller를 연결하고 delegate와 View Controller를 연결합니다.

iphone-usb-storage

6) 우측 [Connections Inspector]를 선택하면 연결된 Oulets 상태가 나옵니다.

iphone-usb-storage5

7) Project Navigator에서 [ViewController.swift]를 열고 아래와 같이 코드를 추가합니다.

[swift]

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

var contents = [String]()

override func viewDidLoad() {

super.viewDidLoad()

// Do any additional setup after loading the view, typically from a nib.

let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)

let documentsDicrectoryPath = paths.first as String

contents = NSFileManager.defaultManager().contentsOfDirectoryAtPath(documentsDicrectoryPath, error: nil) as [String]

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

func numberOfSectionsInTableView(tableView: UITableView) -> Int {

return 1

}

 

func tableView(tableView: UITableView, numberOfRowsInSection section : Int) -> Int {

return contents.count

}

 

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath : NSIndexPath) -> UITableViewCell {

var cell = UITableViewCell(style: .Default, reuseIdentifier: "myCell")

cell.textLabel.text = contents[indexPath.row]

return cell

}

}

[/swift]

 

Facebook Comments

카테고리:   Swift

댓글

죄송하지만 댓글은 닫혀 있습니다.