내용 카카오톡 QR코드 위젯을 통해서 접근하거나 카카오톡에서 쉐이크 모션을 통해 접근할 수 있는 QR코드 뷰의 화면캡처와 기록, 미러링, AirPlay 를 막고있었다. 구현해보자. 먼저 카카오톡 QR코드 뷰가 어떻게 작동하는지 살펴보자. QR코드 뷰 화면캡처를 시도하자 빈화면이 캡쳐되었다. 그리고 경고메시지가 등장했다. 이것은 화면캡처가 되서 첨부해본다. 물론 기기에서는 경고 메시지 뒤에 QR 코드 뷰가 있다. 목표 화면캡쳐 시 alert 창 등장 화면캡쳐 결과에 관여해서 빈 화면이 캡쳐되도록하기 시작 전 📸 원리 📌 UIApplication.userDidTakeScreenshotNotification screenshot 할 때 notification 이 post. Discussion notificati..
UILabel 부분 글자 크기/폰트/색상/밑줄 설정하기 하단의 " QR 체크인 쉐이크 기능 끄기 " 버튼의 부분 글자에 밑줄을 만들어보자. let text = "QR 체크인 쉐이크 기능 끄기" self.switchShakeButton.setTitle(text, for: .normal) let attributeString = NSMutableAttributedString(string: text) // ✅ 굵기 1의 언더라인과 함께 처음부터 끝까지 밑줄 설정. attributeString.addAttribute(.underlineStyle , value: 1, range: NSRange.init(location: 0, length: text.count)) self.switchShakeButton.titleL..
아래와 같이 상단만 둥근 모서리를 가진 뷰를(파란뷰) 만들고 싶었다. (하얀배경의 뷰와 파란배경의 뷰 두개로 구성) 평소 같으면 masksToBounds 프로퍼티에 true 를 줘서 해결하려했는데 뒤에 그림자가있어서 상단좌우측 둥근 모서리와 그림자를 동시에 줄 수 없었다.(서로가 반대의 프로퍼티 값을 요구하기 때문.) 그래서 maskedCorners 프로퍼티를 설정하기로 했다. qrcodeTopView.backgroundColor = .blue qrcodeTopView.layer.cornerRadius = 10 // 좌측상단, 우측상단 qrcodeTopView.layer.maskedCorners = [.layerMinXMinYCorner, .layerMaxXMinYCorner] 다음의 옵션을 통해서 설정..
내용 shake motion 을 인식해서 화면전환 시 진동 추가 시작 전 진동 기능을 추가하기 위해서 vibrate 라는 개념에 대해서 개발자 문서에서 찾아보았다. kSystemSoundID_Vibrate 라는 변수를 찾았고 알아보자. 🙌 kSystemSoundID_Vibrate iPhone 에서 AudioServicesPlayAlertSound(_:) 함수와 함께 사용하여 짧은 진동을 호출한다. iPod touch 에서는 아무 작업도 수행하지 않는다. 그렇다면 AudioServicesPlayAlertSound(_:) 에 대해서 알아보자. 🙌 AudioServicePlayAlertSound(_:) Plays a system sound as an alert. Parameters inSystemSoundID..
내용 카카오톡에서 두번 흔들면 qr 코드 뷰를 띄어주는 기능 클론코딩 두가지 방법에 대해서 알아볼 것이다. UIResponder 의 motion event 메서드를 재정의해서 사용 CoreMotion Framework 사용 2️⃣ CoreMotion Framework 사용 시작 전 👏 원리 motion service 를 관리하는 CMMotionManager 를 활용. 👏 CMMotionManager [CMMotionManager](https://developer.apple.com/documentation/coremotion/cmmotionmanager) 객체를 사용하여 장치의 온보드 센서에서 감지한 움직임을 보고하는 서비스를 시작합니다. 이 객체를 사용하여 4가지 유형의 모션 데이터를 수신합니다. Acc..
내용 카카오톡에서 두번 흔들면 qr 코드 뷰를 띄어주는 기능 클론코딩 두가지 방법에 대해서 알아볼 것이다. UIResponder 의 motion event 메서드를 재정의해서 사용 CoreMotion Framework 사용 1️⃣ UIResponder 의 motion event 메서드를 재정의해서 사용 시작 전 👏 원리 motion capture delegate 에서 shake gesture 를 capture 해서 사용. 👏 UIResponder 이벤트에 응답하고 처리하기 위한 추상 인터페이스입니다. overall 이벤트가 발생하면 UIKit 은 처리를 위해서 UIResponder 의 인스턴스에게 보내지게 된다. touch events, motion events, remote-control events,..
클론코딩 스터디 - 미라클론 기간 : 8/23 ~ 9/13 계획 : 1주차 : 카카오톡 shake motion 2주차 : SwfitUI, 카카오톡 QR widget 3주차 : FaceID 목표 : view 적인 요소보다 새로운 기능적인 부분을 좀 더 계획하고 진행해 보자. 개인적인 목표 code base 프로젝트 SnapKit 사용 MVVM 적용 mvvm foldering ├── Resource │ ├── Info.plist │ ├── Assets │ ├── Constants ├── Source │ ├── AppDelegate │ ├── SceneDelegate │ ├── Observables │ ├── Models │ ├── ViewModels │ └── Views └── Swift Package Ma..
이전 글을 읽고 오면 이해가 더 잘 될 것이다. iOS) Design pattern MVVM(1/2) - MVC, MVVM 알아보기 시작 전 디자인 패턴에 대해서는 무엇이 정답이라는 것이 없다고 한다. 그만큼 맹신하면 안된다고 한다. 무엇이 장점이고 단점인지에 대해서 알고 사용해봤는지가 중요하다고 한다. 또한 현업에서도 같은 프로젝트 내에서 한가지 디자인 패턴만 사용하지 않는다고 한다. 그래서 어떤 상황에 어떤 패턴이 유리한지에 대해서 아는 것이 중요하다고 생각 했다. 다음 소개하는 mvvm 패턴은 기본적인 mvvm 의 구성요소에 충실하게 진행했다. 이것보다 더 구체적인 구조도 있고 같은 역할을 다르게 구현한 코드도 많다. 즉, 같은 mvvm 패턴내에서도 행동패턴을 어떻게 가져가냐에 따라 다양하다. 하나..
- YPImagePicker
- watchOS
- rxswift
- SwiftUI
- CloneCoding
- OpenSourceLibrary
- Objective-C
- Firebase
- async/await
- Protocol
- 서버통신
- MVVM
- APNS
- 2022 KAKAO TECH INTERNSHIP
- MOYA
- IOS
- UserDefaults
- github
- WWDC22
- projectsetting
- Widget
- WWDC
- Notification
- urlsession
- WidgetKit
- Swift
- Algorithm
- configurable widget
- RxCocoa
- containerBackground
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Total
- Today
- Yesterday