[ios] 키보드가 TextField를 가리는 문제점 - 2 안녕하세요. 오늘은 예전에 한번 다뤄보았던 이슈 중 하나인 디바이스의 키보드가 나타났을 때 TextField를 가리는 문제점에 대해 조금 더 공부해보았고 이를 정리하고자 글을 작서합니다. 예전에 작성한 글은 다음과 같습니다. [ios] 키보드가 TextField를 가리는 문제점 또한 오늘의 포스팅을 보다 쉽게 이해하시려면 Notification에 대한 배경지식이 필요합니다. 이에 대한 글도 작성해놓았으니 참고하시기 바랍니다. [ios] NotificationCenter 그럼 바로 시작하겠습니다. 먼저 이전에 작성한 글의 문제점을 살펴보도록 하겠습니다. 저는 해당 포스팅에서 문제의 해결방법으로 키보드가 나타나고 사라지는 이벤트에 대해 Notifi..
[ios] File System (1) 안녕하세요. 저는 하나의 프로젝트를 만들면서 온라인에서 mp3파일을 어플리케이션 내에 다운로드 받아 오프라인에서도 재생이 되게끔 구현해야 했습니다. 이를 위해 어플리케이션 내 특정 디렉토리에 저장을 해야하는데 이를 보다 자세히 이해하기 위해 파일 시스템에 관해 공부를 하였고 공부한 것을 기록하고자 이렇게 글로 남기게 되었습니다. 공부를 한 것을 기록하는 것으로 몇몇의 글을 번역한 부분이 있습니다. iOS Standard Directories: Where Files Reside 보안의 목적으로 하나의 iOS 어플리케이션은 자신이 속한 샌드박스안의 디렉토리들만을 접근할 수 있습니다. 새로운 어플리케이션이 디바이스 내에 설치되는 동안 인스톨러는 해당 어플리케이션의 샌드박..
[ios] UICollectionView + UILongPressGestureRecognizer 안녕하세요. 오늘은 UICollectionView에 UILongPressGestureRecognizer를 적용시켜보는 법을 알아보도록 하겠습니다. UICollectionView의 Cell들의 터치에 대한 액션은 didSelectedItemAt 메소드를 사용하실 겁니다. 이는 단순히 touchUpInside에 의한 액션에 해당하는 메소드입니다. 하지만 오늘은 UILongPressGestureRecognizer를 이용해 사용자가 Cell을 길게 누르는 액션을 통해 Cell을 지워보도록 하겠습니다. 그럼 바로 시작해보도록 하겠습니다. 기본 세팅 먼저 오늘 예제를 위한 기본 세팅을 해보도록 하겠습니다. 저는 Coll..
[ios] AutoLayout - Unable to simultaneously satisfy constraints 안녕하세요. 오늘은 제가 오토레이아웃을 사용하면서 콘솔창에 생기는 에러 메시지들의 의미를 파악하고 해결한 것을 기록하고자 이렇게 글을 작성하게 되었습니다. 저는 코드를 이용하여 동적으로 오토레이아웃을 자주 변경하는 편입니다. 하지만 가끔 작동은 되지만 알 수 없는 오토레이아웃 에러 메시지들이 콘솔창에 출력이 되고 평소에는 이를 무시하였으나 오늘은 이를 확실히 알고 싶어 살짝 공부해보았습니다. 먼저 에러가 났던 코드는 다음과 같습니다. 코드를 이해하실 필요는 없습니다. 간단히 말씀드리자면 오토레이아웃의 초기 설정은 setupPlayerDetailView입니다. 하지만 특정 액션이 주어지면 ma..
[ios] CMTime & addBoundaryTimeObserver 안녕하세요. 오늘은 AVKit를 이용하다가 새로 알게 된 것이 있어 이렇게 기록을 통해 남겨놓으려 합니다. 저는 AVKit을 이용해 특정 오디오를 재생시키는 기능을 구현하고 있었습니다. 구현하는 중 저는 오디오가 재생되기 시작하면 그에 맞춰서 특정 애니메이션을 주어 오디오가 재생되고 있다는 것을 사용자가 보다 확실히 느낄 수 있게끔 하고 싶었습니다. 처음에 구현한 코드는 다음과 같습니다. (간단하게 표현하도록 하겠습니다.) 하지만 원하는 동작은 이루어지지 않았습니다. 재생이 끝난 후가 아닌 뷰가 로드되자마자 해당 애니메이션이 실행되어 제가 볼 수 있는 시점에서는 이미 애니메이션이 종료된 상태였습니다. 그래서 구글링을 하던 도중 addB..
[Rails] OAuth2.0 with Google OAuth2.0이란 - OAuth2.0?를 참고해주세요. Google API 및 사용자 인증 정보 발급 오늘은 이런 OAuth2.0을 이용한 구글 로그인을 구현해보도록 하겠습니다. 가장 먼저해야 하는 것은 Google의 API를 사용하기 위해 이를 설정하는 행위입니다. 일종의 "내 사이트가 당신들의 API를 쓰고 싶으니까 허가증을 발급해줘" 라는 의미입니다. https://console.developers.google.com에 접속합니다. 프로젝트 하나 생성합니다. Google+와 Google People API 이 두개의 API 사용을 요청합니다. (사진에서는 Google+만 있고 저는 이미 사용하고 있기 때문에 관리라는 버튼이 보이는 것입니다.) 이..
[ios] 슬라이드 메뉴 만들기 안녕하세요. 오랜만에 iOS 포스팅으로 찾아뵙습니다. 오랜만에 글을 쓰는만큼 오늘은 좀 더 실용적이지만 생각보다 간편하게 만들 수 있는 슬라이드 메뉴 바를 만들어 보는 시간을 갖도록 하겠습니다. iOS 슬라이드 메뉴바를 구글에 검색해보면 대표적인 라이브러리가 하나 있습니다. 바로 SWRevealViewController 입니다. 저도 처음에는 이것을 이용해서 슬라이드 메뉴를 만들어보았습니다. 하지만 스토리보드를 이제 사용하지 않는 저에게는 그다지 메리트 있는 라이브러리는 아니였습니다. 그리고 사용법을 익히는 것도 저에게는 부담스럽더라구요. 그래서 저는 제가 직접 만들어보기로 했고 생각보다 쉽게 원하는 기능을 구현하여셔 공유하고자 이렇게 포스팅으로 남기려 합니다. 먼저 이번..
CRUD without Scaffolding CRUD 기능을 구현할 때 가장 중요한 것이 바로 라우팅 작업일 것입니다. 기본적이 라우팅 경로는 다음과 같습니다. route.rb 경로와 해당 경로의 요청을 처리하는 컨트롤러와 액션의 이름이 같아면 액션은 따로 작성해주지 않아도 됩니다. Ex) 'posts/index' => 'posts#index' 컨트롤러-액션 생략 new는 새로운 글을 작성하는 폼이 있는 페이지로 가는 것이기 때문에 get이고 create는 해당 폼에서 입력된 값들이 body에 담겨져 오면 해당 값들을 데이터베이스에 저장하는 역할을 하기 때문에 post를 통해 요청을 보냅니다. Model 글을 작성하면 이를 저장하기 위한 데이터베이스 모델이 필요합니다. 다음 명령어를 통해 모델을 만들어 ..
- Total
- Today
- Yesterday
- nodejs
- Codable
- auto layout
- 프로토콜
- CRUD
- 운영체제
- storyboard
- IOS
- 알고리즘
- 오토레이아웃
- Swift
- 부스트코스
- oauth2.0
- Xcode
- segue
- edwith
- 테이블뷰
- UIControl
- boostcourse
- Operating System
- UIResponder
- 클로저
- 아이폰
- notificationcenter
- TableView
- 스위프트
- iPhone
- Algorithm
- 백준
- Protocol
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |