👨🏻‍💻iOS 공부/iOS & Swift

    [iOS] UITextField + UIPickerView

    UITextField를 클릭하게 되면 보통 키보드가 올라오면서 텍스트를 입력할 수 있게 된다. 키보드가 올라온다는 것은? 커스텀한 입력값을 받을 수 있다는 것이다. 하지만 커스텀한 값을 받는 것이 아니라 정해진 값을 받고 싶다면 어떻게 해야할까?? 드롭다운을 생각할 수도 있지만, 외부 라이브러리가 아닌 UIPickerView를 통해 드롭다운을 구현해보고자 한다. 우선 아래와 같이 UITextField는 만들어져있다고 가정해보자. 한 달에 몇 권이나 읽나요? 이 부분을 커스텀한 값으로 받을 수도 있겠지만 드롭다운 내 값으로만 받아보자. 우선 ViewController 내에 드롭다운으로 선택 가능한 선택지를 만들어줘야 한다. var readbook = ["0권😑","1 ~ 2권","3 ~ 5권", "6 ~ ..

    [Swift] Auto Layout 세 가지 방법 (feat. SnapKit)

    뷰(View)를 그릴 때 위치 즉, 레이아웃을 설정하게 되는데, 기기 사이즈가 워낙 다양하다보니 자동으로 기기 환경에 맞게 레이아웃이 변경되도록 하는 것을 오토레이아웃(Auto Layout)이라고 한다. 오토레이아웃을 어떻게 구현할 수 있는지, 그 방법들의 장단점은 무엇인지 하나하나 살펴보자. (아래와 화면을 구성하기 위해 어떻게 레이아웃을 설정할 수 있는지 보자) 1. 일반적인 오토레이아웃 // X버튼 // autolayout 적용을 위해서는 false 설정 필수! closeButton.translatesAutoresizingMaskIntoConstraints = false // view에 추가 self.view.addSubview(closeButton) // autolayout closeButton...

    [Swift] 넷플릭스 화면 따라만들기 (3)

    저번까지는 searchAPI를 구현해봤었다. 이제는 클릭 이후에, 영상을 가져오고/틀어주고, 화면전환까지 되도록 구현해보자. 그러기 위해서는 먼저 영상을 갖고 있는 movie라는 객체가 있어야 하고 영상을 틀어줄 playerViewController (player vc)가 있어야 한다. 이후 player vc + movie 로 올려주고, presenting plaver vc를 통해 영상을 재생해준다. // 클릭 되었을 때 구현해줘야 하는 부분 extension SearchViewController: UICollectionViewDelegate { func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexP..

    [Swift] 넷플릭스 화면 따라만들기 (2)

    넷플릭스 화면 따라만들기 (2)이전에는 searchBar를 구현했었는데, 이제는 searchTerm을 가지고 검색 API로 검색결과를 받아보는 과정을 구현해 볼 것이다.먼저 어떤 task를 수행해야하는지 나열해보자. [목표] searchTerm을 가지고 네트워킹을 수행하여 영화를 검색해야한다.그러기 위해서는 검색 API가 필요하다.또한 검색 결과를 받아올 모델(Movie), Response가 필요하다.마지막으로 결과를 받아와서, collectionView에 띄워야 한다. 말로는 매우 간단하다... 서버에서 키워드로 검색을하고, 결과를 받아와서, 원하는 정보만 앱 내에 띄워주면 된다는 것이다.백문이불여일견...! 코드로 바로 가보자 import UIKitimport Kingfisher class Searc..

    [Swift] 넷플릭스 화면 따라만들기 (1)

    넷플릭스 화면 따라만들기 (1)(두둥~... 소리가 음성지원 되는 듯하다...) 출근러, 통학러들에게 필수인 넷플릭스 어플! 콘텐츠의 집합체인 넷플릭스를 모르는 사람은 없을 것이다. 사용할 때는 영상을 찾아서 플레이하는 것을 간단하게 생각하였으나, 그 기능을 만들기 위해 필요한 요소들에 대해 학습해볼 것이다. 먼저 넷플릭스를 구성하는 기능들 중 “서치 페이지”와 “플레이어”를 구현해 볼 것이다. 플레이어의 경우 실제 서버에 있는 영상을 스트리밍하여 재생할 수 있도록 해볼 것이다! 먼저 서치 바(searchBar)를 만들어 보자. XCode내 우측 [+] 버튼을 눌러 “search bar”를 검색하여 추가한다.알맞게 가져다 넣은 후, View와 Leading/Trailing/top 오토레이아웃을 해준다.위..

    [Swift] URLSession이란? (2)

    URLSession (2)response 받은 데이터를 object로 만들어 볼 것이다.블로그 내의 데이터를 받아와보려고 했으나, 구조가 많이 달라 우선 강의과 같은 조건으로 진행해보자. 우선 기존에 작성했던 것 처럼 urlComponents를 생성한다. let config = URLSessionConfiguration.defaultlet session = URLSession(configuration: config) // URLvar urlComponents = URLComponents(string: "https://itunes.apple.com/search?")!let mediaQuery = URLQueryItem(name: "media", value: "music")let entityQuery = U..