일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Xcode
- FLUTTER
- geofencing
- SwiftUI
- Code
- Archive
- error
- appstore
- Realm
- iOS16
- Git
- window
- JPA
- Notification
- Firebase
- Apple
- IOS
- 한글
- 개발자
- MacOS
- view
- 웹뷰
- Session
- github
- mac
- stack
- darkmode
- rxswift
- Swift
- UIButton
- Today
- Total
목록IOS (174)
EEYatHo 앱 깎는 이야기
1. Xcode 자체적으로 지원해주는 기능을 사용한다. Product -> Clean Build Folder 하지만,, 완벽하게 지워지진 않는다. 2. 직접 남아있는 찌꺼기를 지운다. 경로 : ~/Library/Developer/Xcode/DerivedData/* CMD로 가능 rm -rf ~/Library/Developer/Xcode/DerivedData/* 직접 찾아가서 지우기 가능 ( 라이브러리 폴더가 안보이면 커맨드+쉬프트+. 을 입력하면 숨김폴더가 보인다. )
애플로그인 -> 이메일 가리기 선택시, 앱에는 xxxx@privaterelay.appleid.com 형태의 이메일이 온다. ( privaterelay email ) pricaterelay email로 이메일 전송시, Apple에서 정상 email로 포워딩을 해주는데, 발신자가 등록된 도메인 or 이메일이어야 한다. 관련된 자세항 사항은, 아래 애플 문서 참고! Apple Developer Documentation developer.apple.com 발신 도메인 및 이메일 등록하기 애플 사이트 -> Cerificates, Identifiers & Profiles -> 좌측 메뉴에서 More 선택 -> Configure 선택 도메인이나 이메일을 등록하기위해, + 버튼 선택. 그럼 위와같은 화면이 나오는데, ..
언제부턴가 막혀서 해당 꼼수로 email 받아올 수 없게 되었따.. 애플로그인시 해당 함수로 콜백되며, email을 포함한 각종 유저 정보를 얻을 수 있다. func authorizationController(controller: ASAuthorizationController, didCompleteWithAuthorization authorization: ASAuthorization) { guard let credential = authorization.credential as? ASAuthorizationAppleIDCredential else { return } let email = credential.email let user = credential.user var authCode = "" if l..
UIActivityViewController로 action sheet를 띄우거나, share기능을 만들거나 할 때, iPad 지원을 위해 popoverPresentationController를 설정하곤 한다. 1. popoverPresentation을 띄울 뷰를 설정한다. vc.popoverPresentationController?.sourceView = view 2. 설정해준 뷰에서, popoverPresentation를 띄울 좌표를 설정 할 수 있다. vc.popoverPresentationController?.sourceRect = CGRect(x: view.bounds.midX, y: view.bounds.midY, width: 0, height: 0) 3. popoverPresentation는 ..
Dictionary -> Data /// 1 let imageData = UIImage(named: "sissor")?.jpegData(compressionQuality: 0) let dict: [String: Any] = [ "string": "bbb", "data": imageData, "array": ["aaaa", "bbbb", 1234] ] let dictData = try? PropertyListSerialization.data(fromPropertyList: dict, format: .binary, options: .zero) /// 2 let jsonData = try? JSONSerialization.data(withJSONObject: dict) Data -> Dictionary ///..
let userAgent = UIWebView().stringByEvaluatingJavaScript(from: "navigator.userAgent")! + " \(customAgent)" UserDefaults.standard.register(defaults: ["UserAgent" : userAgent]) 이렇게만 해주면 정말 신기하게도; WKWebView의 userAgent 기본값으로 세팅된다. ( webview.customAgent = "\(필요한 값)" 이런식으로 안넣어줘도 말이다!! ) 오우오우 신기방기 그런데 iPhone에서만 기본값으로 세팅되고, iPad는 세팅이 안된다; 이게 대체 모손일이야....... 결국 iPad까지 고려하면, 아래처럼 세팅 해줘야한다.. webView.custom..
네비게이션바에는 기본값으로 하단에 회색 1px짜리 라인이 있다 = shadowImage UIScrollViewDelegate를 채택한 뷰컨의 경우, 스크롤 할 때, 이 shadowImage를 바꿀 수 있는 설정이 있다. 아래처럼하면 스크롤시 shadowImage가 사라지는 효과를 줄 수 있다. let scrollEdgeAppearance = UINavigationBarAppearance() scrollEdgeAppearance.shadowColor = .clear // 스크롤 될 때의 shadowImage의 색깔 naviBar?.scrollEdgeAppearance = scrollEdgeAppearance let standardAppearance = UINavigationBarAppearance() st..
navigationBar.backgroundImage 의 기본값은 nil 이다 그런데 Xcode 12.4 에서는 하얀색 이미지. Xcode 13.0 에서는 투명색 이미지. 를 보여준다 ㅡㅡ 고치려고 navigationBar.setBackgroundImage를 사용해 보았는데, Xcode 13.0에서는 사용할 수 없는 함수이다 ㅋㅋㅋ....ㅠ 이제부턴, UINavigationBarAppearance를 사용해서 navigationBar의 설정을 만져야한단다~ 아래 코드처럼 말이다. if #available(iOS 13.0, *) { let appearance = UINavigationBarAppearance() appearance.configureWithOpaqueBackground() appearance...