hsleedevelop
hsleedevelop
hsleedevelop
  • 분류 전체보기 (22)
    • Develop (22)
      • CS (1)
      • iOS (7)
      • Swift (13)
      • SwiftUI (0)

최근 글

  • Xcode 14 빌드 속도 올리는 방법
    2023.01.29
    Xcode 14 빌드 속도 올리는 방법
  • 스토리보드, XIB Inspectable에 enum 연동하⋯
    2023.01.29
  • M1 ARM-64 Simulator 지원하지 않는 프레임워⋯
    2023.01.07
  • String에 HTML 링크 적용
    2023.01.07
  • Xcode 정의로 이동하지 않고 우측 에디터에서 보는 방법
    2022.11.13
    Xcode 정의로 이동하지 않고 우측 에디터에서 보는 방법

인기 글

  • [iOS][Swift] WiFi AP 목록 스캔 또는 장치⋯
    2022.08.28
  • Figma 자동 익스포트 for Xcode, Android⋯
    2022.08.28
    Figma 자동 익스포트 for Xcode, Android⋯
  • Failed to uninstall gitlab-runne⋯
    2022.09.16
    Failed to uninstall gitlab-runne⋯
  • iOS 메모리 사용량 파헤치기
    2022.09.11
  • Xcode 14 빌드 속도 올리는 방법
    2023.01.29
    Xcode 14 빌드 속도 올리는 방법

태그

  • xcode 팁
  • XIB Inspectable
  • Xcode Definition
  • Xcode 빌드
  • Xcode Build 실행 시 명확하게 표시하는 방법
  • html
  • Xcode Build
  • 시뮬레이터
  • excldue
  • ios localization
  • Link
  • Xcode 베젤
  • Xcode 14 빌드 속도 올리는 방법
  • SwiftUI 상에서 HTML 출력과 Link
  • 스위프트
  • enum 연동하는 방법
  • SVG 다운로드
  • KingFisher에서 SVG 이미지 다운로드하는 방법
  • Jump to definition
  • xcode 꿀팁
  • CSS 적용하는 방법
  • SVG download
  • Xcode 정의로 이동하지 않고 우측 에디터에서 보는 방법
  • Xcode bezel
  • Swift
  • Xcode
  • Xcode 정의
  • Kingfisher SVG
  • Simulator
  • architecturel

최근 댓글

전체 방문자
1,465
오늘
2
어제
2

티스토리

hELLO · Designed By 정상우.
hsleedevelop

hsleedevelop

Develop/Swift

스토리보드, XIB Inspectable에 enum 연동하는 방법

2023. 1. 29. 12:17
반응형

스토리보드, XIB에서 UIButton (또는 그외 컨트롤) 에 @IBInspectable을 연동해서 사용하는 경우가 많은데, IBInspectable 값을 enum 으로 선언해서 연동하는 방법입니다.

enum 타입 작성

enum StatusShape:Int {
    case Rectangle = 0
    case Triangle = 1
    case Circle = 2
}

@Inspectable 작성

  // IB: use the adapter
   @IBInspectable var shapeAdapter:Int {
        get {
            return self.shape.rawValue
        }
        set( shapeIndex) {
            self.shape = StatusShape(rawValue: shapeIndex) ?? .Rectangle
        }
    }

Interface Builder에서 확인

Available in IB

기본값 설정

   // Programmatically: use the enum
   var shape:StatusShape = .Rectangle

최종 코드

@IBDesignable
class ViewController: UIViewController {

    enum StatusShape:Int {
        case Rectangle
        case Triangle
        case Circle
    }

    // Programmatically: use the enum
    var shape:StatusShape = .Rectangle

    // IB: use the adapter
    @IBInspectable var shapeAdapter:Int {
        get {
            return self.shape.rawValue
        }
        set( shapeIndex) {
            self.shape = StatusShape(rawValue: shapeIndex) ?? .Rectangle
        }
    }
}

출처 : https://stackoverflow.com/questions/27432736/how-to-create-an-ibinspectable-of-type-enum

반응형

'Develop > Swift' 카테고리의 다른 글

M1 ARM-64 Simulator 지원하지 않는 프레임워크 수정하는 방법  (0) 2023.01.07
String에 HTML 링크 적용  (0) 2023.01.07
KingFisher에서 SVG 이미지 다운로드하는 방법  (0) 2022.11.13
SwiftUI 상에서 HTML 출력과 Link, CSS 적용하는 방법  (0) 2022.11.13
multi-line 문구 localizable.strings 적용 방법  (0) 2022.10.13
    'Develop/Swift' 카테고리의 다른 글
    • M1 ARM-64 Simulator 지원하지 않는 프레임워크 수정하는 방법
    • String에 HTML 링크 적용
    • KingFisher에서 SVG 이미지 다운로드하는 방법
    • SwiftUI 상에서 HTML 출력과 Link, CSS 적용하는 방법
    enum 연동하는 방법, XIB Inspectable, 스토리보드
    hsleedevelop
    hsleedevelop
    iOS, Swift js, node js, react c, c++, .net ruby, sql
    댓글쓰기
    이전 글
    M1 ARM-64 Simulator 지원하지 않는 프레임워크 수정하는 방법

    티스토리툴바