iOS 개발시 AppDelegate의 applicationWillTerminate 호출이 되지 않거나 macOS의 NSApplicationWillTerminateNotification이 호출되지 않을 때 다음과 같이 Info.plist에서 해당 값을 확인해 볼 필요가 있습니다. 해당 값을 NO 로 설정하고 앱을 재실행하면 terminator가 잘 호출 되는 것을 확인 할 수 있습니다. Application can be killed immediately when user is shutting down or logging out NSSupportsSuddenTermination ▼ 아래 코드는 위젯 상태를 업데이트 하기 위해서 applicationWillTerminate 호출시 로그아웃 명령을 하는 코드로 ..
Cocoapods 최근에 나온 맥으로 Cocoapods를 설치하면 문제가 되는데 이유를 알아보면 m1을 통해 gem으로 설치하면 특정한 명령을 추가하거나 로제타로 터미널을 실행해야 정상동작합니다. 때문에 최근에는 새로운 m1 맥북에서는 가급적이면 Homebrew의 brew 명령어를 사용해서 Cocoapods를 설치합니다. ▼ 우선 gem을 이용한 설치 방법입니다. 다음과 같이 터미널을 열고 명령어를 입력하면 설치가 됩니다. ▼ 이번에는 Homebrew 패키지 매니저의 brew 명령을 통해서 cocoapods를 설치해보겠습니다. sudo 권한이 필요 없이 바로 설치가 가능합니다. ▼ 만약 Homebrew 패키지 매니저가 설치되지 않았다면 다음 명령을 통해서 설치가 가능합니다. 위의 명령어가 실행되지 않는다..
스위프트 UI 토글 스위치 SwiftUI에서 많이 사용하는 스위치와 토글 버튼에 대해서 알아보겠습니다. UIKit에서도 설정과 같은 곳에서 많이 쓰이는 토글 스위치는 스위프트 UI에서 정말 간단하게 사용하고 바인딩된 값도 손쉽게 알 수 있습니다. 때문에 이전에 UIKit을 통한 아이폰 개발보다 훨씬 편리할 것 같습니다. 스위프트 UI에서는 총 3가지 토글 버튼 스타일을 구현할 수 있습니다. 버튼 체크박스 (macOS 전용) 스위치 ▼ 간단하게 토글 스위치를 추가해봤습니다. Toggle 안에 Label을 넣어서 표현할 수 있습니다. padding()을 주어서 여백을 주었습니다. ▼ 다음은 위에 코드에서 토글 스타일만 버튼(.button)으로 변경한 경우입니다. On/Off 할 수 있는 버튼을 만들 수 있습..
▼ 다음과 같이 Person 데이터 구조체와 staff 라는 Person 배열을 생성합니다. 그리고 view에 ForEach 구문을 통해서 리스트를 표현해줍니다. 그럼 간단한 리스트를 확인할 수 있습니다. ▼ 이제 VStack와 HStack을 이용해서 이름뿐만 아니라 전화번호 그리고 전화기 모양의 아이콘을 리스트로 표현합니다. 그밖에 옵션으로 텍스트 색상과 폰트를 설정해줍니다. ▼ 위의 코드도 잘 동작하긴 하지만 view 안쪽에 많은 코드가 들어가서 보기가 좋지 않습니다. 다음과 같이 PersonRowView 라는 해당 Row를 표현하는 새로운 뷰를 만들어줍니다. ▼ 이제 뷰를 재사용해서 좀 더 단순하게 표현할 수 있습니다. ▼ List에 그룹을 만들어보겠습니다. 우선 더 이상 staff 배열은 사용하지..
Oh-my-zsh 설치하기 https://ohmyz.sh/ Oh My Zsh - a delightful & open source framework for Zsh Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with several helpful functions, helpers, plugins, themes, and a few things that make you shout... OH MY ZSH! ohmyz.sh 다음 스크립트를 복사해서 터미널에 붙여넣기 합니다. ▼ 다음과 같은 화면이 보인다면 설치가 완료되었다는 뜻 입니다. ▼ 다음..