본문 바로가기

전체 글68

Android Studio, IntelliJ, PyCharm, Webstore 등을 종료할 때 terminate와 disconnect 차이 terminate는 돌아가고 있는 프로세스를 강제로 종료하고 끄고, disconnect는 프로세스 그대로 두고 종료한다. 별 생각 없이 disconnect하면 다시 실행했을 때 포트가 사용중인 불편한 상황을 만날 수 있다. 2021. 3. 6.
iOS UIViewController를 스와이프로 닫지 못하도록 하려면 iOS 13 에선 기본으로 sheet 스타일로 표시가 된다. 이렇게 표시가 되면 스와이프로 화면을 닫을 수 있는데, 이를 막으려면 viewController의 isModelInPresentation을 변경하면 된다. if #available(iOS 13.0, *) { isModalInPresentation = true } 이렇게 해도 스와이프가 아예 안되는건 아니고 튕기는 것을 볼 수 있는데, 이때 적절한 메시지를 표시하려면 UIAdaptivePresentationControllerDelegate의 presentationControllerDidAttemptToDismiss 를 구현하면 된다. developer.apple.com/documentation/uikit/uiadaptivepresentationc.. 2021. 3. 1.
iOS에서 인 앱 리뷰 요청 if #available(iOS 14.0, *) { if let scene = UIApplication.shared.connectedScenes.first(where: { $0.activationState == .foregroundActive }) as? UIWindowScene { SKStoreReviewController.requestReview(in: scene) } } else if #available(iOS 10.3, *){ SKStoreReviewController.requestReview() } 주의사항은 호출한다고 매번 프롬프트가 뜨는건 아니고 일년에 최대 3번 나온다고 한다. 이 주의사항이 마음에 안든다면 옛날 방법으로 앱스토어로 넘겨 알아서 리뷰를 남기도록 할 수 있다. let url .. 2021. 2. 28.
iOS 앱에서 다크모드 비활성화 UIUserInterfaceStyle 두가지 방법이 있다. 아래처럼 info.plist 에 UIUserInterfaceStyle을 Light(혹은 Dark)로 추가하면 되는데 UIUserInterfaceStyle Light xcode에서 추가하려고 하면 UIUserInterfaceStyle이 없다. Appearance로 입력해야 한다. xml에서 UIUserInterfaceStyle로 입력해도 xcode에선 Appearance로 나오니 당황하지 말자. 다른 방법은 필요에 따라 window, viewController, view 에서 각각 ovverrideUserInterfaceStyle을 .light로 설정하면 된다. 그런데 다크모드를 강제하는데 화면별로 따로 할 일이 뭐가 있을까, info.plist에.. 2021. 2. 27.