미뉴로그

· Swift/iOS
최근 개인 앱을 하나 출시 했는데요. 이제 막 출시 해서 얼마 되지 않겠지만, 국가별 다운로드 수가 궁금해서 확인해 보니 한국보다는 해외에서 다운받은 경우가 더 많았습니다. 하지만, 제가 출시한 앱은 해외 유저를 전혀 생각하지 않은 앱이기 때문에 외국어를 지원하지 않고 있었는데요. 그래서 "최소한 영어라도 지원을 해보자" 하고 급하게 부랴부랴 언어에 영어를 추가했습니다. 그런데, 영어를 지원하기 위해 이전에 사용하던 Strings File을 사용하려고 보니 이름이 Strings File (Legacy)로 바뀌어 있었습니다. 이때, 뭔가 이상함을 감지하고 찾아보니 Xcode 15부터는 String Catalog라는 새로운 파일 형식이 생겨 Localization에 이 형식을 사용하게 된 것이었습니다. 그래..
· Swift/iOS
개인적으로 이미지나 비디오 등의 미디어 플레이, 편집 등 멀티미디어 관련 기술에 관심이 많아 자료를 많이 찾아보는 편인데, 최근 미디어에 여러 필터를 적용하는 방법을 찾아보았습니다. 이번 시간에는 미디어에 다양한 효과를 주는 방법 중 Core Image(이하 '코어 이미지') 프레임워크에서 지원하는 CIFilter를 이용하여 사진에 다양한 효과를 주는 방법에 대해 알아보려고 합니다. Core Image 코어 이미지는 Apple의 퍼스트파티 프레임워크의 하나로, 정지 영상 및 동영상 이미지에 고성능 처리를 제공하는 이미지 처리 및 분석 기술입니다. 코어 이미지를 사용해서 시스템에서 제공하거나 혹은 사용자가 지정한 다양한 필터를 사용하여 이미지를 처리하거나 필터를 연결하여 복잡한 효과를 만들 수 있습니다. ..
· Swift/UIKit
지난 시간에 UIBarAppearance에 대해 찾아보면서 시스템 바에 흐림 효과를 주는 방법에 대해서도 알아보았었는데요. 이번 시간에는 시스템 바가 아닌 뷰에 흐림 효과를 주는 방법에 대해 알아보겠습니다. Apple Design Resource와 Material 우선 지난 시간에 잠시 참고 했던 Apple Design Resource 피그마 파일을 다시 한번 참고해보겠습니다. Apple Design Resource 피그마에서는 다양한 Color 및 Material들을 컴포넌트에 사용할 수 있는데요. 지난 시간에 UIBarAppearance를 살펴보며 피그마에서 iOS의 시스템 바는 chrome으로 채워져 있는 것을 알 수 있었습니다. 하지만, UIColor에는 chrome이라는 색이 존재하지 않는데요...
· Swift/UIKit
꽤 오랜 시간 계획해 온 프로젝트가 있었는데, 최근 그 프로젝트를 진행하게 되면서 여러 문제에 직면하게 되었습니다. 그중 하나가 UINavigationBar, UIToolbar 등의 시스템 바와 관련된 부분이었는데요. 이번 시간에는 앱의 시스템 바를 다루면서 고군분투하면서 공부한 내용을 기록하려 합니다. 시스템 바를 커스터마이징하게 된 배경 우선 시스템 바를 다루게 된 배경부터 살펴보자면, 가장 처음에는 Navigation Bar와 Toolbar에 빈 공간이 생겨버린 것에서부터 시작하게 됩니다. 어떤 뷰에서 다른 뷰로 넘어갈 때 위와 같이 네비게이션 바와 툴바에 뜬금없이 세이프 에리어를 지킨 것 같은 빈 공간이 생겨버렸는데요. 이 문제를 해결하기 위해 공식 문서를 뒤적거리다 찾은 것은 UIBarAppea..
· Swift/iOS
지난 시간에 UISlider를 다루면서 슬라이더의 트랙 이미지에는 이미지의 너비를 자연스럽게 늘리거나 줄이기 위해 Stretchable Image를 사용할 수 있다고 했는데요. Stretchable Image라는 이름을 웹이나 안드로이드 앱 분야에서는 들어본 적이 없는 것 같아서 이게 무엇인지 찾아보았습니다. 이번 시간에는 이 Stretchable Image에 대해 공부한 내용을 정리해 보려 합니다. Stretchable Image 우선 이 Stretchable Image가 무엇인지 알아보기 위해 공식 문서를 살펴보기로 했습니다만, Stretchable Image만 별도로 다룬 문서는 따로 없는 것 같고, 그 대신 stretchableImage(withLeftCapWidth:topCapHeight:)라는..
· Swift/UIKit
저번 시간에 이어 이번 시간에도 미디어 플레이어에서 현재 재생 중인 구간을 보여주고, 다른 구간으로 넘어갈 수 있게 하는 재생바 부분을 어떻게 구현하면 좋을지 고민하며 공부한 내용을 정리해 보려 합니다. 이번 시간에는 UISlider에 대해서 알아보겠습니다. UISlider 앞서 본 UIProgressView는 미디어 플레이어에서 재생바의 현재 진행 중인 부분을 표시할 수는 있지만, 기본적으로 제공하는 방법으로는 내가 원하는 구간으로 넘어가는 기능을 구현할 수 없어 UIResponder의 touch event 관련 메서드를 재정의하여 구현해야 했습니다. UIKit에서는 특정 동작 등을 전달하기 위한 UIControl들이 존재하는데요. 이러한 UIControl 중에는 UIProgressView와 유사하게 ..
· Swift/UIKit
개인적으로 미디어 플레이에 관심이 많아서 개인 프로젝트로 뮤직 플레이어나 비디오 플레이어 등을 몇 번 만들어봤는데요. 미디어 플레이어에서 현재 재생 중인 구간을 보여주고, 또 다른 구간으로 넘어갈 수 있게 하는 재생바 부분을 어떻게 구현하면 좋을지 고민하며 공부한 내용들을 정리해 보려 합니다. 그중에서도 이번 시간에는 처음에 찾아봤던 UIProgressView에 대해서 알아보겠습니다. UIProgressView 많은 미디어 플레이어에서 현재 재생 구간을 보여주는 재생바는 단순히 재생 구간을 보여주는 것만이 아니라 내가 원하는 구간으로 재생 구간을 변경하는 기능도 함께 하는 경우가 많습니다. 이러한 재생바를 영어권에서는 주로 Progress Bar라는 명칭으로 부르는데요. UIKit에도 비슷한 명칭의 UI..
· Daily Life
또다시 글또를 시작하며 이번에도 글또를 다시 시작했습니다. "글또"는 "글 쓰는 또라이가 세상을 바꾼다"라는 꽤 흥미로운 이름을 가진 개발자 글쓰기 모임으로, 7기에 처음 합류하여 지난 8기에 이어 이번 9기에도 참여하게 되었습니다. 글또에 처음 참여한 7기 때는 초반에는 열심히 참여했습니다. 하지만 한 2~3달 정도 참여하고 나니 당시에 하고 있던 아카데미 일정에, 공모전, 해커톤 등 여러 일정으로 글 쓰기가 뒷전이 되어 흐름을 놓쳐버렸고, 글을 썼더라도 뭔가 마음에 들지 않아서 온전한 글을 제출하고 싶다는 마음으로 패스권을 사용하고 넘기기도 했어요. 그렇게 글을 제출하지 않고 몇 번을 넘기다 보니 "아 이번에도 넘겨야겠다"라는 생각으로 그다음부터는 제대로 참여하지 않았던 것 같아요. 이렇게 7기가 끝..
· Reflection
어느새 올해의 절반이 지나가 버렸습니다. 벌써 7월 중순이 되어 조금 늦은 감이 있지만, 올해의 절반을 어떻게 보냈는지 회고해보는 시간을 갖으려고 합니다. 상반기 계획 작년 12월 애플 아카데미를 마치고, 올해 초가 될 때까지만 해도 하려고 했던 것이 많았는데 대표적으로는 아래와 같습니다. Swift 문법 다지기 코딩 테스트 문제 매일 최소 1문제는 풀기 iOS 개발 면접 준비 iOS(UIKit, SwiftUI) 공부 및 정리하기 Swift Charts, UIButton, UICollectionView, Core NFC, Life Cycle 글또 8기 활동 예치금 까이지 않기 제대로 된 양질의 글 제출하기 가능하면 커피챗 아카데미 및 사이드 팀 프로젝트 이어가기 가능한 빠르게 취업하기 개발자 행사 참여 ..
· Swift/iOS
개인적으로 미디어 플레이에 관심이 많아서 최근 개인 프로젝트로 뮤직 플레이어를 만들어 보기 시작했는데요. 뮤직 플레이어를 만들기 위해 이런 저런 방법을 찾다가 AVPlayer를 사용하기로 했는데, AVPlayer 문서를 보던 중 KVO라는 낯선 단어를 발견했습니다. AVPlayer에서의 간략한 설명으로만 보았을 때는 무언가 상태를 관측하는 듯 한데, 제대로 된 설명이 있지 않아 KVO가 무엇이고, 어떻게 사용할 수 있는지에 대해 공부한 내용을 정리해보려고 합니다. KVO KVO는 Key-Value Observing의 약자로, Delegate나 Notification 등과 같이 특정 이벤트가 발생할 때, 원하는 객체에 이를 알려 적절한 동작을 하는 커뮤니케이션을 위한 패턴 중 하나로, 키-값 관찰이라는 이..
meenu_
'분류 전체보기' 카테고리의 글 목록 (2 Page)