[iOS] Xcode에서 Memory Leak을 확인하는 두 가지 방법 - 2) Instruments
iOS 2022. 3. 11. 23:20

Memory Leak이란? '메모리 누수'라고도 표현하며, 더이상 사용되지 않는 인스턴스가 메모리에서 해제되지 않고 남아있는 현상을 뜻한다. 이 메모리 누수를 해결하지 않으면 한정된 리소스를 효과적으로 활용하기 어려우니 메모리 누수가 일어나고 있지는 않은지 확인해서 반드시 해결해야 한다. 이번 글에서는 Memory Leak을 확인하는 두가지 방법을 소개하고자 한다. 바로 Xcode의 'Memory Graph Debugger'와 'Instruments'다. 그중에서도 이번에는 Instruments에 대해 알아보자. 사전 준비 이전 글에서 사용한 예제를 그대로 사용했다. 이전 글과 마찬가지로 첫번째 화면(First)에서 터치하면 두번째 화면(Second)로 진입하고, 진입하면서 동시에 서로를 강하게 참조하는..

[iOS] Xcode에서 Memory Leak을 확인하는 두 가지 방법 - 1) Memory Graph Debugger
iOS 2022. 2. 10. 01:30

Memory Leak이란? '메모리 누수'라고도 표현하며, 더이상 사용되지 않는 인스턴스가 메모리에서 해제되지 않고 남아있는 현상을 뜻한다. 이 메모리 누수를 해결하지 않으면 한정된 리소스를 효과적으로 활용하기 어려우니 메모리 누수가 일어나고 있지는 않은지 확인해서 반드시 해결해야 한다. 이번 글에서는 Memory Leak을 확인하는 두가지 방법을 소개하고자 한다. 바로 Xcode의 'Memory Graph Debugger'와 'Instruments'다. 그중에서도 이번에는 Memory Graph Debugger에 대해 알아보자. 사전 준비 두가지 방법을 테스트하기 위한 것이므로 아주 간단하게 준비했다. 첫번째 흰 화면(First)에서 화면을 터치하면 바로 두번째 파란 화면(Second)로 넘어간다. 첫..

[iOS] 앱을 첫 출시 했는데, 언어가 영어(EN)라고? 대체 왜??
iOS 2022. 1. 3. 11:10

얼마 전에 처음으로 만든 앱을 앱 스토어에 출시했다. 우여곡절 끝에 첫 심사를 통과했단 메일을 받고 신나서 앱 스토어에 접속해보니 이게 웬 걸? 앱의 언어가 영어로 설정되어있었다. 분명 나는 앱 스토어에 올릴 때 언어가 한국어인 걸 확인했는데...?😢 당최 왜 한국어로 표시해줄 것도 아니면서 떡하니 한국어라고 적어놨는지는... 모르겠으나... 앱 스토어에 표시되는 언어를 바꿀 수 있는 방법을 구글링해서 찾아냈다. 앱 스토어 언어 표시 변경하기 Xcode로 만든 앱은 기본적으로 언어가 "영어"로 설정된다고 한다. 이 언어를 바꿔주자. 원하는 프로젝트를 열고 info.plist파일에 "Localization native development region"을 추가해 속성에 "Korea"를 추가해 준다. Str..

[iOS] 텍스트 필트(UITextField) 커서 숨기기
iOS 2021. 12. 25. 15:10

간혹 UITextField를 사용할 때 커서를 숨겨야 할 때가 있다. 대표적으로 UIPickerView나 UIDatePicker같은 PickerView를 사용해 사용자가 뭔가를 선택하고, 그 값을 UITextField에 입력하는 기능을 만드는 경우가 그렇다. 이때 UITextField에 사용자가 직접 입력값을 입력하지 않고 PickerView의 값이 입력되는데, 사용자가 입력 불가능한데도 불구하고 커서가 깜빡인다면 굉장히 어색할 것이다. 이럴 때를 위해 깜빡이는 커서를 숨기는 방법을 알아보자. 깜빡이는 커서 숨기기 기본적으로 UITextField를 터치하면 커서가 깜빡인다. 커서를 숨기기 위해 UITextField를 상속한 클래스를 하나 생성해주자. 그리고 다음과 같이 함수를 오버라이딩 해준다. clas..

[iOS] Scroll View의 오토 레이아웃이 동작하지 않을 때 in storyboard
iOS 2021. 8. 12. 19:00

스토리 보드에서 Scroll View에 오토 레이아웃을 적용해보자! 우리가 일반적으로 Image View, Table View 등을 화면에 꽉 차게 표시하고 싶을 때 아래처럼 상하좌우에 0이라는 제약 사항을 걸어주고는 한다. 그러면 보통 View가 화면의 Safe Area 전체를 덮도록 설정되는데, Scroll View는 그렇게 호락호락하지 않다.🥲 공포의 빨간선이 나타나면서 'Scrollable Content Size Ambiguity' 라는 문구가 뜬다. 해석해보면 '스크롤 뷰가 애매모호한 스크롤 가능한 콘텐츠의 너비와 높이를 가지고 있다' 라는데, 그럼 어떻게 해야 할까? 콘텐츠의 너비와 높이가 애매모호하다고 했으니까 스크롤 뷰에게 스크롤 뷰가 표시할 콘텐츠의 명확한 너비와 높이를 제약 사항으로 주..