IBDecodable
A tool to translate .xib
and .storyboard
XML into Swift models.
Installing
Cocoapods:
UsingSimply add the following line to your Podfile:
pod 'IBDecodable'
Swift Package Manager:
UsingTo include IBDecodable into a Swift Package Manager package, add it to the dependencies attribute defined in your Package.swift
file.
dependencies: [
.Package(url: "https://github.com/IBDecodable/IBDecodable.git", majorVersion: <majorVersion>, minor: <minor>)
]
Parse Storyboard
From file url:
let file = try StoryboardFile(url: fileURL)
From string content:
let parser = InterfaceBuilderParser()
let storyboardDocument = try parser.parseStoryboard(xml: "<?xml ... ")
Browse the storyboard scene
if let scenes = file.document.scenes {
for scene in scenes {
..
}
}
Get the storyboard resources
if let resources = file.document.resources {
for resource in resources {
resource.resource // .. `NamedColor`, Ìmage
}
}
Parse Xib
From file url:
let file = try XibFile(url: fileURL)
From string content:
let parser = InterfaceBuilderParser()
let xibDocument = try parser.parseXib(xml: "<?xml ... ")