일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 앱스토어
- 앨범북
- 2FA
- SwiftUI
- SSL
- apple
- Android
- css
- fido
- kmip
- MSYS2
- SWIFT
- OSX
- albumbook
- git
- MYSQL
- OTP
- 인증
- MFA
- WebAuthn
- openssl
- appres
- FIDO2
- 안드로이드
- Nodejs
- otpkey
- SSH
- 앱리소스
- 애플
- Xcode
Archives
- Today
- Total
인디노트
macOS 앱 개발시 iOS 같은 UIImage 를 사용하고 싶은때 본문
UIImage 는 iOS 앱 개발시 유용하게 사용하는 code 입니다.
macOS 앱을 개발하다보면 NSImage 를 사용해야 하는데 이러한 경우 소스를 일원화 하기 위해서 UIImage 를 만들어 사용하면 편리할 수 있습니다.
우선, 참고사항으로
macOS 용 타켓인지 확인하기 위하여 코드를 다음의 내용으로 랩핑할 수 있습니다.
#if os(macOS) / #endif
코드에서 Cocoa 를 선언합니다. 이것은 NSImage 를 사용하기 위해서 입니다.
import Cocoa
다음과 같이 UIImage 를 NSImage 로 사용하라는 선언을 합니다.
typealias UIImage = NSImage
그리고 NSImage 에 CGImage 기능을 추가 합니다. UIImage 에는 있지만 NSImage 에는 없기 때문입니다.
extension NSImage {
var cgImage: CGImage? {
var proposedRect = CGRect(origin: .zero, size: size)
return cgImage(forProposedRect: &proposedRect,
context: nil,
hints: nil)
}
convenience init?(named name: String) {
self.init(named: Name(name))
}
}
이제 다음과 같이 UIImage 를 사용할 수 있습니다.
struct Data {
let string: String
let image: UIImage
}
반응형
'소스 팁 > Objective C, Swift, iOS, macOS' 카테고리의 다른 글
Swift 에서 화면(Screen) 캡춰와 녹화관련 (0) | 2021.04.17 |
---|---|
Swift 의 class 안에서 다른 ViewController 를 여는 방법 (0) | 2021.04.17 |
맥용 (macOS) 메뉴바 앱 (menu bar app) 만들기 - SwiftUI 편 (0) | 2021.04.09 |
iOS 앱 개발시 블랙 화면만 표시되는 경우 (0) | 2021.02.19 |
Apple App Icon json Sample (0) | 2020.08.26 |
Comments