iOS
-
사진 Exif에서 날짜 데이터 가져오기iOS/Did 2020. 3. 10. 15:09
사진의 create date를 가져와야해서 방법을 찾아보았다. (다운받은 사진은 뭔가 다른방법이 필요한 것 같다..ㅠ) 원래는 imagePickerController delegate method의 info를 이용하여 다음과 같이 create date를 구할 수 있다. 그런데 phAsset 키가 안보인다...(기존에는 info[UIImagePickerControllerPHAsset] as? PHAsset로 사용했었는데..) func getCreateDate(by info: [UIImagePickerController.InfoKey : Any]) -> Date? { guard let asset = info[.phAsset] as? PHAsset else { return getExifDate(by: info)..
-
UITableView Paging 처리iOS/Did 2020. 3. 3. 15:04
테이블 뷰에서 한꺼번에 데이터를 받아오는 것이 아니라 10개씩 데이터를 받아오고, 마지막 row가 되면 새로운 10개의 데이터를 받아오는 Paging 처리가 필요해서 만들게 되었다. (이렇게 만드는 것이 맞는지는 잘 모르겠다.....) tableView cellForRowAt delegate method에서 마지막 행인지를 체크한다. (isLastestRow(row:)) 그리고 데이터를 추가하고 테이블뷰를 reload하도록 한다. func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { guard let cell = titleTableView.dequeueReusableCell(withId..
-
NavigationBar 아래 라인 생성 및 삭제iOS/Did 2020. 3. 1. 23:30
앱을 개발하다보면 필요에 따라 NaviationBar 아래에 구분선을 지우고 싶을 때가 있다. 기본 default값으로 구분선이 들어가 있는데, 이를 지울 때는 viewDidLoad()에 다음과 같이 설정해주면된다. self.navigationController?.navigationBar.shadowImage = UIImage() 만약 이전 뷰에서 구분선이 없었는데, 현재의 뷰에서는 구분선을 생성해야할 때는 다음과 같이 설정해주면 된다. (nil이 default 값이기 때문) self.navigationController?.navigationBar.shadowImage = nil 특별한 shadowImage를 원한다면, 다음 이미지처럼 UIImage()에 적절한 이미지를 넣어 수정할 수 있다. self...
-
TableView에서 TextView 자동 높이 조정iOS/Did 2020. 3. 1. 19:59
TableViewCell 안에 textView를 두고 데이터를 출력하던중.. 내가 원하던 뷰가 아님을 발견하였다. 아래 그림들 중 왼쪽이 내가 생각한 것, 오른쪽이 현실... textView 높이는 데이터를 textview에 넣으면서 알 수 있기에.. 아래 코드와 같이 오토 리사이징이 필요하다는 설정을 코드에서 해줘야했다. translatesAutoresizingMaskIntoConstraints와 sizeToFit()를 사용하여 문제 해결 extension UITextView { func setTextView() { self.translatesAutoresizingMaskIntoConstraints = true self.sizeToFit() } } translatesAutoresizingMaskInto..
-
git & iTerm2 & Oh my zsh 설치iOS/Did 2020. 2. 15. 16:13
애플 개발자 인증문제때문에 마구 지우다가 파일을 다 지워버리게 되었다.. git도 파일도 모두 지워졌다.. git을 다시 설치하며 기록을 남겨본다. 1. http://git-scm.com 가서 설치 후 git --version 확인 2. git 사용자 설정 git config --global user.name "myUserName" git config --global user.email "myemail" $ git config --global user.name "myUserName" $ git config --global user.email "myemail" 3. iTerm2 설치 https://www.iterm2.com/ 가서 설치 4. Oh my zsh를 설치 zsh --version 확인 후 아래 ..
-
AR SessioniOS/AR 2019. 7. 26. 04:04
안녕하세요 dely입니다:) 오늘은 ARSession 객체에 대해 정리해보겠습니다. ARSession은 객체는 ARKit의 모션 추적 및 이미지 처리를 담당합니다. (CMMotionManager와 AVCaptureSession을 관리하는 클래스: Image data와 Motion data를 조합하여 ARFrame을 생성, cf, VIO(Visual Inertial Odomery)를 이용한 CV연산으로 위치를 추적해 ARFrame을 만들어낸다고 합니다.) - AR Session Configuration ARSession을 시작하기 전에 AR Session Configuration을 만들어야합니다. 이것은 실제 세계와 가상 3D 세계 사이의 연결을 설정하는 데 사용됩니다. 모션 추적 및 이미지 처리를 하는 ..
-
SingletoniOS/App Develop 2019. 7. 25. 18:06
안녕하세요 dely입니다:) 오늘은 Singleton에 대해서 정리해보겠습니다. Singleton은 디자인패턴 중의 하나입니다. 디자인패턴은 개발 구조적 설계 패턴이라고 표현할 수 있습니다. 이 디자인패턴에는 Singleton 말고도 팩토리 패턴, 옵저버 패턴, 데코레이터 패턴, 어댑터 패턴, 이터레이터 패턴, 델리게이트 패턴이 있습니다. 이후에 하나씩 다뤄볼 수 있겠죠..?? 델리게이트 패턴의 경우에는 2019/07/21 - [iOS/App Develop] - UIImagePickerViewController(photoLibrary) 위의 글에서 ImagePicker를 사용하기 위해 쓰기도 했었습니다. 다시 넘어와서.. 싱글톤(Singleton) 패턴은 단 하나의 클래스 인스턴스만 쓰기 위한 방법으로 ..