일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드 앨범
- swift autolayout
- FlutterView MethodChannel
- 스위프트 카메라
- native flutter view
- swift 문자
- Swift flutterview
- 안드로이드 바로가기
- 스위프트 앨범
- 노티피케이션 익스텐션
- 푸시 데이터 저장
- 스위프트
- 안드로이드 FCM
- 스위프트 UserDefaults
- Flutter NativeView
- Flutter UIKitView MethodChannel
- 플러터 뷰 컨트롤러
- swift sms
- NotificationService Extension
- Swift flutterviewcontroller
- flutter rotate
- 앱 꺼졌을 때 푸시 데이터 저장
- silent push
- 스위프트 푸시
- 스위프트 웹뷰
- 안드로이드 에러
- flutter 회전
- 스위프트 테이블 뷰 셀
- 앱 백그라운드 푸시 데이터 저장
- 안드로이드 숏컷
- Today
- Total
목록iOS (기능) (89)
Things take time
[개요] 기본적으로 기기별의 사이즈를 구할때는 UIScreen.main.bounds로 구할 수 있으나, 레티나 디스플레이가 나오면서 각각의 기기에 따라 scale이란 변수가 추가되어, 실제 픽셀의 개수를 의미하는 해상도를 구할 수 있다. 또한, 덧붙여 현재 기기가 몇 인치인지 확인하는 방법또한 소개한다. 스택 오버플로에서 찾았는데, 링크를 따로 적어두지 못했다. [코드] let screenBounds = UIScreen.main.bounds let screenScale = UIScreen.main.scale let screenSize = CGSize(width: screenBounds.size.width * screenScale, height: screenBounds.size.height * screen..
[개요] 제목짓기가 참 애매했는데, 무슨의미냐하면 사용자가 플레이어를 재생하는 도중 앞으로 가기를 위해 더블탭을 눌렀다고 가정하자. 사용자가 더블탭을 5번 눌렀을 때, 최후의 작업은 5번누른 만큼의 시간(10초라 가정할 경우 50초)을 이동하길 원한다. 여기서 구현 방법은 1. 더블탭을 누를 때마다 10초를 이동시킨다. 2. 특정시간안에 계속된 연속동작이 들어올 경우, 카운트를 증가시키고 특정 시간이 지나고 연속동작이 들어오지 않았을 때 카운트 * 10초를 해서 해당 플레이어를 이동시킨다. 1번이 가장 이상적이긴하겠지만, 상황에 따라 2번을 써야할 때가 있다. 플레이어를 예로 들었지만 애니메이션이 동작하고 있을 때 라던지(애니메이션이 돌고 있는 와중에는 애니메이션을 다시 재시작하지 않기 위함) 등이 있다..
[개요] iOS 14 이전의 경우 앱의 화면을 전체를 차지하기 때문에, 백그라운드 이벤트 및 포어그라운드 이벤트를 옵저버로 등록하여 감지할 수 있었으나, 14가 업데이트 되면서 non-intrusive phone call이 되어, 화면을 덮지 않는 것으로 변경되었다. 이에 따라 대응이 필요한 경우 아래와 같이 사용하자. 기본적으로 14 phone call은 backGround는 그대로 돌아가지만, 사운드가 사라지게 되므로 이를 사용하는 것이다. 참고로 해당 옵저버는 사용자가 집접 사운드를 컨트롤할 때는 호출되지 않으므로 그에 대한 걱정은 필요 없다. [코드] NotificationCenter.default.addObserver(self, selector: #selector(receiveSoundInter..
[사용목적] 흔히 말하는 모듈화, 기능적으로 완전히 분리되며 다른 프로젝트에서도 공통적으로 쓸 수 있는 기능을 한 프로젝트 내에 두는 것이 아니라 프레임워크라 하는 것으로 만들어 이 프로젝트, 저 프로젝트에서 가져다 쓰기 위함이다. 설명을할 때 어렵게 쓰지 않을 것이다. 다른 곳 둘러보니 이 용어 저 용어 다 쓰는데, 그냥 이해하기 쉽게 표현하겠다. [만들기] 새 프로젝트를 생성하고, 생성을 선택할 때 프레임워크를 선택한다. 이름은 ReusingFramework로 하였다. 일반 싱글 뷰 앱으로 생성할때와 달리, 메인스토리보드에 대한 설정이 보이지 않는다. 즉, 외부 프레임워크 자체는 일반 프로젝트처럼 메인 스토리보드에서 initial view controller라는 것이 없는 것이다. 프레임워크는 가져다..