일반적으로 먼저 만들어져 있는 Class에 Extension 하여서 무엇을 만들게 되면 객체는 만들수가 없게 됩니다. 그런데 rx, snp, kf 등은 이렇게 하는 방법으로 무언가를 만들어서 사용합니다. 우리도 이렇게 하는 방법을 만들어 봅시다. * 실제로는 이걸 만들어서 여러군데에 사용하고 싶기 때문에 한번만 만들고 나머지는 그냥 다 상속 받아서 사용할겁니다. 1. struct Extension struct Extension { let base: Base init(_ base: Base) { self.base = base } } RxSwift 같은것들을 보면 위와 비슷한 코드가 있습니다. 이것은 뒤에 만들 ExtensionSupport의 값을 저장하는 용도로 만들기 위해서 두도록 합니다. 2. prot..
예전에는 QuickTime 에서 녹화를 했던거 같은데... 그건 이제는 리얼 디바이스에서만 되는걸로 변경이 되었습니다. 음? 리얼 디바이스는 어차피 녹화기능이 있는걸? ㅎㅎ 아무튼 시뮬레이터 녹화하는 방법을 알아봅시다. $ xcrun simctl io booted recordVideo [name].mov 이렇게 하면 간당하게 녹화가 되는데 끄는건 Ctrl + C 하면 됩니다. Cancel. 그런데 이렇게 하는데 안되는 분들이 있습니다. 다음과 같은 에러가 발생하면서요. xcrun: error: unable to find utility "simctl", not a developer tool or in PATH 무엇이 문제냐면 xcode에서 location 을 지정해주면 됩니다. Xcode > Prefere..
지금은 사용하지 않지만 다시 한번 오픈하여 보려고 안드로이드 스튜디오를 열어 보았는데 오류가 발생하였다. Unsupported Modules Detected: Compilation is not supported for following modules 어떠한 모듈에 대해서 컴파일이 지원하지 않는다는것 같은데, 프로젝트 이름을 변경하느라고 뭔가가 꼬인거 같은 생각이 들었다. 해결 방법. 1. Android Studio 를 종료합니다. 2. .idea directory를 삭제합니다. 3. .iml 파일들을 삭제합니다. 4. open Androud Studio
파싱을 하기 위해서 만들어진 아주 아름다운 녀석입니다. Mirror를 이용하여 값을 가져와서 자동으로 매핑하도록 하게 되어있죠. 굿... 하지만 기존까지는 CodingKey를 이용하여서 snake를 camel로 변경하여서 개발을 하였던 적이 있었습니다. 나온지는 오래되었지만 아직 모르는 분들이 많아서 해당 부분을 정리하려고 합니다. 1. useDefaultKeys : 기본적인 동작 방법입니다. 2. convertFromSnakeCase : 만약 키가 스네이크로 되어 있으면 카멜로 변경하여서 매핑하여 줍니다. 3. custom([CodingKey]) -> CodingKey) : 사용자 지정하는 방법으로 가능하게 합니다. 1번과 2번은 그냥 정의 해주면 되는데 custom은 정리를 하여야 합니다. 사용방법은..
거의 모든 상황에서 뷰를 만들때 재사용을 할 수 있도록 만듭니다. 왜냐면 디자인의 버튼을 예를 든다면 거의 비슷한 버튼이 나오죠... 그래서 CustomView를 하는 방법을 알아보도록 합시다. 저는 UIViewController에 이런걸 넣고 싶어요 그렇죠 My Name is DH 부분의 파란 배경까지가 CustomView 입니다. 사용할 File은 대략 이렇게 3개에요. 자 그럼 하나씩 봅시다. 1. CustomView import UIKit extension UIView { func loadView(nibName: String) -> UIView? { let bundle = Bundle(for: type(of: self)) let nib = UINib(nibName: nibName, bundle: ..
- Total
- Today
- Yesterday
- tomcat
- Spring
- android
- windows10
- php
- Kotlin
- nodejs
- Python
- ubuntu
- Xcode
- Codable
- ios
- Linux
- rxswift
- MySQL
- Gradle
- golang
- SWIFT
- cocoapods
- enum
- Java
- war
- centos8
- go
- Windows
- git
- intellij
- CentOS
- github
- docker
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |