
[1] HTML 스타일 그대로 로드하기 (with 커스텀 설정) UILabel에 HTML 스타일 그대로 로드할 수 있습니다. (폰트나 색깔 같은 것을 커스터마이징 할 수 있음) 예를들어 또는 태그로 감싸진 것을 볼드처리 해주고 html 태그들을 지워주고 html entity 들을 디코딩해줍니다. (html entity표 = 영어버전 및 한글버전) 저는 css style을 참고해서 extension을 만들었고 이런식으로 쓸 수 있습니다. 돌려보면 이렇게 스타일이 적용되고 + 으로 인코딩되었던 + 도 디코딩되어서 나옵니다..!! 참고로 저는 paragraph 스타일만 정의해줘서 html에 h1 같은 태그가 있으면 안먹힐 거에요..! css문서보니까 h1 스타일을 따로 정의해주더라구요...!+! 하지만 지금 ..
iOS에서 로컬데이터베이스를 쓸 때 보통 SQLite, CoreData, Realm 을 사용합니다. 이중에서 CoreData는 애플이 제공하는 것이고 SQLite와 Realm은 써드파티 라이브러리 입니다. SQLite는 sql문을 써야하는 반면, CoreData와 Realm는 sql문을 안써도 됩니다. CoreData와 Realm은 데이터를 Object로 다루기 때문에 더 편하고 간단하게 느껴집니다. (하지만 2020년에 올라온 SQLite 좋다는 글. 아직 안읽어봄.) https://www.raywenderlich.com/6620276-sqlite-with-swift-tutorial-getting-started SQLite With Swift Tutorial: Getting Started In this..

iOS에서 서버와 통신할때 주로 Alamofire를 많이 씁니다. 얼마전 저의 블로그 첫글을 찾아봤는데, Alamofire와 관련된 내용이더라구요..! 😱 이렇게 Alamofire는 iOS 시작할때 많은 사람들이 기본적으로 쓰는 네트웤 라이브러리라고 할 수 있는 것 같아요 하지만 Alamofire 를 안쓰면 보통 URLSession.shared.dataTask을 통해 이런식으로 코드를 작성합니다. Alamofire의 내부를 살펴보기전에, URLSession과 URLSessionDataTask에 대해서 살펴보려고 합니다 :-) URLSession URLSession 은 특정한 URL를 이용하여 데이터를 다운로드하고 업로드하기 위한 API를 제공합니다. 관련 Delgegate는 URLSessionDelega..
저는 얼마전에 Unit Test를 돌리면 objc[60376]: Class _TtC4RIBs6Worker is implemented in both ~/Library/Developer/CoreSimulator/Devices/3A6725C3-27B5-4AD4-AE45-74695DC574BD/data/Containers/Bundle/Application/EEED6AE8-0469-42AD-84F2-B470FFB6CFCE/SimpleMemo.app/Frameworks/RIBs.framework/RIBs (0x104851920) and ~/Library/Developer/Xcode/DerivedData/SimpleMemo-gpgaamoyiqvqbnaehzbepweorlts/Build/Products/Debug-ip..
[1] Podfile.lock을 여는 명렁어 open podfile.lock [2] cocoapod 버전 업그레이드 아래 명령어로 현재 버전을 확인하고 pod --version 원하는 버전으로 업데이트 시켜주세요 sudo gem install cocoapods -v 1.9.1 ruby 버전이 너무 낮아서 에러가 날 때가 있습니다. 그럴때는 이 블로그를 참고해서 ruby 버전 업 해줍니다. [3] 로컬 캐쉬를 지울때 아래 명령어로 로컬 캐쉬리스트를 출력할 수 있습니다. pod cache list 그리고 아래 명령어로 로컬 캐쉬들을 모두 지울 수 있습니다. pod cache clean --all (www.stackoverflow.com/questions/46428752/how-to-clear-or-clean..

🎅 간단 요약 🎄 [1] 깃헙에 레포지토리를 하나 만듭니다 [2] 소스트리에 클론해줍니다 [3] 해당 폴더에 들어가서 SPM을 만들어줍니다. 명렁어: swift package init [4] 빌드가 잘 되는 지 확인합니다 명령어: swift build [5] 테스트를 잘 돌리는 지 확인합니다 명령어: swift test [6] 프로젝트를 만들어줍니다 명령어: swift package generate-xcodeproj 그리고 프로젝트가 잘 열리는 지 열어봅니다 명령어: xed . (현재 폴더에 있는 프로젝트를 열어주는 명령어입니다) 이렇게 잘 열렸습니다. 예전에는 이렇게 구성되어있었는데, 이렇게 프로젝트가 생겼습니다. [7] (옵션) dependencies를 설정해줍니다 현재 Package.swift에 가..

Cocoapod 라이브러리 만들어보기 포스팅을 쓰면서, SPM으로도 이 라이브러리를 import하는 방법을 찾아보고 싶었는데, 기록합니다. ⚠️ 이 포스팅은 저의 의식의 흐름(?) 순서대로 구성되어있으므로 깔끔한 순서를 보고 싶으신 분은 Supporting Swift Package Manager in your Pod in 5 simple steps 이 글을 참조하세요!_! ⚠️ [1] 나의 라이브러리 폴더에 들어가서 밑의 명령어를 칩니다. swift package init 그러면 이렇게 Package.swift 등등의 파일을 만들어줍니다. 이 변경사항을 커밋해줍니다. [2] 나의 라이브러리를 올려둔 깃헙에 들어가서 새로운 릴리즈 버전을 만들어줍니다. 0.1.0 에서 0.1.1로 Latest Release..

1. 환경설정 Blue View의 subview는 Yellow View Yellow View의 subview는 GreenView & PurpleView 인 형태로 실험을 준비합니다 일일이 돌려보기 귀찮으니 Preview를 준비합니다. 그리고 blueView에 shadow를 주세요..!! blueView에 shadow를 줬으니 Preview에서 blueView 밑에 shadow가 들어간 것을 볼 수 있습니당..!! 여기까지 실험 전, 환경설정한 코드 입니다 2. 실험 이제 여기서 blueView의 background를 clear로 줘봅시다 짠! 자식뷰인 yellow view한테 shadow가 적용된 것을 볼 수 있습니다. 그 다음 yellowView의 backgroundcolor도 clear로 설정해줍니다..

XCODE 11 + macOS Catalina 라면 Xcode Preview 기능을 쓸 수 있습니다. SwiftUI가 아니라 기존 UIKit로 짰던 코드도 Preview기능을 사용할 수 있습니다!! 이제 @IBDesignable쓰거나 디바이스 별로 빌드해서 View를 확인해보지 않아도 됩니다 (감동..🥺) 첫번째, UIView를 Preview로 보기 RankingBarView라는 View를 예를 들어보겠습니다. 이 View는 1위, 2위 같은 랭킹을 보여주는 막대그래프이고 막대그래프가 올라가는 애니매이션도 사용할 수 있습니다. 이 뷰를 Preview로 보기 위해서 3가지 절차를 거쳐주세요 : ) 1. 환경 설정해주기 이렇게 환경설정 해줍니다. 우리는 #if 와 #endif 안에서 작업해줄 것입니다 2. ..

UIView에 관해 많이 까먹어서 옛날에 들었던 Stanford iOS 강의 중 View 부분을 다시 듣고 있는데, 까먹지 않게 정리 중 --! [1] bounds가 change되면 다시 draw를 하는가?! * 예제로 보여주신 것 이렇게 뷰를 만드셨고, 돌려보면 이렇게 나옵니다 - 기본 설정에서 (contenMode가 scaleToFill..!!) rotate할 때 - 이렇게 contentMode를 Redraw로 바꾸고 rotate할 때 => 이렇게 설정하면 bounds가 change 될때, drawRect을 다시 부르게 됩니다 이 내용 관련 정말 정리 잘한 블로그! https://useyourloaf.com/blog/stretching-redrawing-and-positioning-with-conte..
- Total
- Today
- Yesterday
- METAL
- cocoapod
- github actions
- flutter deep link
- flutter build mode
- Watch App for iOS App vs Watch App
- 장고 URL querystring
- Flutter Clipboard
- SerializerMethodField
- Flutter Spacer
- Django Heroku Scheduler
- 장고 Custom Management Command
- ribs
- Flutter Text Gradient
- 구글 Geocoding API
- Flutter getter setter
- 플러터 싱글톤
- DRF APIException
- Sketch 누끼
- Django FCM
- Dart Factory
- 플러터 얼럿
- Flutter 로딩
- PencilKit
- drf custom error
- ipad multitasking
- flutter dynamic link
- Django Firebase Cloud Messaging
- Python Type Hint
- flutter 앱 출시
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |