当我在情节提要板上选择按钮的背景色时,可以使用颜色选择器小部件。选项卡之一称为“铅笔”。
此标签显示排列的彩色铅笔的图片。一支铅笔的颜色为“水银”。
是否可以通过UIColor对象访问此预定义的颜色?
例如
let myColor = UIColor(pencils: "mercury")
答案 0 :(得分:4)
答案 1 :(得分:0)
使用Fkzm的答案,以下是所有颜色。
public struct XCodePencilColorPalette {
private init() { }
public static let licorice = #colorLiteral(red: 0, green: 0, blue: 0, alpha: 1)
public static let lead = #colorLiteral(red: 0.1298420429, green: 0.1298461258, blue: 0.1298439503, alpha: 1)
public static let tungsten = #colorLiteral(red: 0.2605174184, green: 0.2605243921, blue: 0.260520637, alpha: 1)
public static let iron = #colorLiteral(red: 0.370555222, green: 0.3705646992, blue: 0.3705595732, alpha: 1)
public static let steel = #colorLiteral(red: 0.4756349325, green: 0.4756467342, blue: 0.4756404161, alpha: 1)
public static let tin = #colorLiteral(red: 0.5704585314, green: 0.5704723597, blue: 0.5704649091, alpha: 1)
public static let nickel = #colorLiteral(red: 0.5741485357, green: 0.5741624236, blue: 0.574154973, alpha: 1)
public static let aluminum = #colorLiteral(red: 0.6642242074, green: 0.6642400622, blue: 0.6642315388, alpha: 1)
public static let magnesium = #colorLiteral(red: 0.7540688515, green: 0.7540867925, blue: 0.7540771365, alpha: 1)
public static let silver = #colorLiteral(red: 0.8374180198, green: 0.8374378085, blue: 0.8374271393, alpha: 1)
public static let mercury = #colorLiteral(red: 0.921431005, green: 0.9214526415, blue: 0.9214410186, alpha: 1)
public static let snow = #colorLiteral(red: 1, green: 1, blue: 1, alpha: 1)
public static let cayenne = #colorLiteral(red: 0.5807225108, green: 0.066734083, blue: 0, alpha: 1)
public static let mocha = #colorLiteral(red: 0.5787474513, green: 0.3215198815, blue: 0, alpha: 1)
public static let asparagus = #colorLiteral(red: 0.5738074183, green: 0.5655357838, blue: 0, alpha: 1)
public static let fern = #colorLiteral(red: 0.3084011078, green: 0.5618229508, blue: 0, alpha: 1)
public static let clover = #colorLiteral(red: 0, green: 0.5603182912, blue: 0, alpha: 1)
public static let moss = #colorLiteral(red: 0, green: 0.5628422499, blue: 0.3188166618, alpha: 1)
public static let teal = #colorLiteral(red: 0, green: 0.5690457821, blue: 0.5746168494, alpha: 1)
public static let ocean = #colorLiteral(red: 0, green: 0.3285208941, blue: 0.5748849511, alpha: 1)
public static let midnight = #colorLiteral(red: 0.004859850742, green: 0.09608627111, blue: 0.5749928951, alpha: 1)
public static let eggplant = #colorLiteral(red: 0.3236978054, green: 0.1063579395, blue: 0.574860394, alpha: 1)
public static let plum = #colorLiteral(red: 0.5810584426, green: 0.1285524964, blue: 0.5745313764, alpha: 1)
public static let maroon = #colorLiteral(red: 0.5808190107, green: 0.0884276256, blue: 0.3186392188, alpha: 1)
public static let maraschino = #colorLiteral(red: 1, green: 0.1491314173, blue: 0, alpha: 1)
public static let tangerine = #colorLiteral(red: 1, green: 0.5781051517, blue: 0, alpha: 1)
public static let lemon = #colorLiteral(red: 0.9994240403, green: 0.9855536819, blue: 0, alpha: 1)
public static let lime = #colorLiteral(red: 0.5563425422, green: 0.9793455005, blue: 0, alpha: 1)
public static let spring = #colorLiteral(red: 0, green: 0.9768045545, blue: 0, alpha: 1)
public static let seaFoam = #colorLiteral(red: 0, green: 0.9810667634, blue: 0.5736914277, alpha: 1)
public static let turquoise = #colorLiteral(red: 0, green: 0.9914394021, blue: 1, alpha: 1)
public static let aqua = #colorLiteral(red: 0, green: 0.5898008943, blue: 1, alpha: 1)
public static let blueberry = #colorLiteral(red: 0.01680417731, green: 0.1983509958, blue: 1, alpha: 1)
public static let grape = #colorLiteral(red: 0.5818830132, green: 0.2156915367, blue: 1, alpha: 1)
public static let magenta = #colorLiteral(red: 1, green: 0.2527923882, blue: 1, alpha: 1)
public static let strawberry = #colorLiteral(red: 1, green: 0.1857388616, blue: 0.5733950138, alpha: 1)
public static let salmon = #colorLiteral(red: 1, green: 0.4932718873, blue: 0.4739984274, alpha: 1)
public static let cantaloupe = #colorLiteral(red: 1, green: 0.8323456645, blue: 0.4732058644, alpha: 1)
public static let banana = #colorLiteral(red: 0.9995340705, green: 0.988355577, blue: 0.4726552367, alpha: 1)
public static let honeydew = #colorLiteral(red: 0.8321695924, green: 0.985483706, blue: 0.4733308554, alpha: 1)
public static let flora = #colorLiteral(red: 0.4500938654, green: 0.9813225865, blue: 0.4743030667, alpha: 1)
public static let spindrift = #colorLiteral(red: 0.4508578777, green: 0.9882974029, blue: 0.8376303315, alpha: 1)
public static let ice = #colorLiteral(red: 0.4513868093, green: 0.9930960536, blue: 1, alpha: 1)
public static let sky = #colorLiteral(red: 0.4620226622, green: 0.8382837176, blue: 1, alpha: 1)
public static let orchid = #colorLiteral(red: 0.476841867, green: 0.5048075914, blue: 1, alpha: 1)
public static let lavender = #colorLiteral(red: 0.8446564078, green: 0.5145705342, blue: 1, alpha: 1)
public static let bubblegum = #colorLiteral(red: 1, green: 0.5212053061, blue: 1, alpha: 1)
public static let carnation = #colorLiteral(red: 1, green: 0.5409764051, blue: 0.8473142982, alpha: 1)
}
答案 2 :(得分:0)
我想做同样的事情,所以我创建了一个自定义类。希望这可以节省一些时间:)
要访问,请调用PencilColors.instance ...
import Foundation
import UIKit
class PencilColors {
static let instance = PencilColors()
let pencilColors: [(color: UIColor, name: String, type: Int)] = [
//instead of creating an enum in each project:
//type 0 -> black and white
//type 1 -> dark colors
//type 2 -> medium colors
//type 3 -> light colors
(color: .black, name: "Black", type: 0),
(color: #colorLiteral(red: 0.1298420429, green: 0.1298461258, blue: 0.1298439503, alpha: 1), name: "Lead", type: 0),
(color: #colorLiteral(red: 0.2605174184, green: 0.2605243921, blue: 0.260520637, alpha: 1), name: "Tungsten", type: 0),
(color: #colorLiteral(red: 0.370555222, green: 0.3705646992, blue: 0.3705595732, alpha: 1), name: "Iron", type: 0),
(color: #colorLiteral(red: 0.4756349325, green: 0.4756467342, blue: 0.4756404161, alpha: 1), name: "Steel", type: 0),
(color: #colorLiteral(red: 0.5704585314, green: 0.5704723597, blue: 0.5704649091, alpha: 1), name: "Tin", type: 0),
(color: #colorLiteral(red: 0.5741485357, green: 0.5741624236, blue: 0.574154973, alpha: 1), name: "Nickel", type: 0),
(color: #colorLiteral(red: 0.6642242074, green: 0.6642400622, blue: 0.6642315388, alpha: 1), name: "Aluminum", type: 0),
(color: #colorLiteral(red: 0.7540688515, green: 0.7540867925, blue: 0.7540771365, alpha: 1), name: "Magnesium", type: 0),
(color: #colorLiteral(red: 0.8374180198, green: 0.8374378085, blue: 0.8374271393, alpha: 1), name: "Silver", type: 0),
(color: #colorLiteral(red: 0.921431005, green: 0.9214526415, blue: 0.9214410186, alpha: 1), name: "Mercury", type: 0),
(color: .white, name: "White", type: 0),
(color: #colorLiteral(red: 0.5807225108, green: 0.066734083, blue: 0, alpha: 1), name: "Cayenne", type: 1),
(color: #colorLiteral(red: 0.5787474513, green: 0.3215198815, blue: 0, alpha: 1), name: "Mocha", type: 1),
(color: #colorLiteral(red: 0.5738074183, green: 0.5655357838, blue: 0, alpha: 1), name: "Asparagus", type: 1),
(color: #colorLiteral(red: 0.3084011078, green: 0.5618229508, blue: 0, alpha: 1), name: "Fern", type: 1),
(color: #colorLiteral(red: 0, green: 0.5603182912, blue: 0, alpha: 1), name: "Clover", type: 1),
(color: #colorLiteral(red: 0, green: 0.5628422499, blue: 0.3188166618, alpha: 1), name: "Moss", type: 1),
(color: #colorLiteral(red: 0, green: 0.5690457821, blue: 0.5746168494, alpha: 1), name: "Teal", type: 1),
(color: #colorLiteral(red: 0, green: 0.3285208941, blue: 0.5748849511, alpha: 1), name: "Ocean", type: 1),
(color: #colorLiteral(red: 0.004859850742, green: 0.09608627111, blue: 0.5749928951, alpha: 1), name: "Midnight", type: 1),
(color: #colorLiteral(red: 0.3236978054, green: 0.1063579395, blue: 0.574860394, alpha: 1), name: "Eggplant", type: 1),
(color: #colorLiteral(red: 0.5810584426, green: 0.1285524964, blue: 0.5745313764, alpha: 1), name: "Plum", type: 1),
(color: #colorLiteral(red: 0.5808190107, green: 0.0884276256, blue: 0.3186392188, alpha: 1), name: "Maroon", type: 1),
(color: #colorLiteral(red: 1, green: 0.1491314173, blue: 0, alpha: 1), name: "Maraschino", type: 2),
(color: #colorLiteral(red: 1, green: 0.5781051517, blue: 0, alpha: 1), name: "Tangerine", type: 2),
(color: #colorLiteral(red: 0.9994240403, green: 0.9855536819, blue: 0, alpha: 1), name: "Lemon", type: 2),
(color: #colorLiteral(red: 0.5563425422, green: 0.9793455005, blue: 0, alpha: 1), name: "Lime", type: 2),
(color: #colorLiteral(red: 0, green: 0.9768045545, blue: 0, alpha: 1), name: "Spring", type: 2),
(color: #colorLiteral(red: 0, green: 0.9810667634, blue: 0.5736914277, alpha: 1), name: "Sea Foam", type: 2),
(color: #colorLiteral(red: 0, green: 0.9914394021, blue: 1, alpha: 1), name: "Turquoise", type: 2),
(color: #colorLiteral(red: 0, green: 0.5898008943, blue: 1, alpha: 1), name: "Aqua", type: 2),
(color: #colorLiteral(red: 0.01680417731, green: 0.1983509958, blue: 1, alpha: 1), name: "Blueberry", type: 2),
(color: #colorLiteral(red: 0.5818830132, green: 0.2156915367, blue: 1, alpha: 1), name: "Grape", type: 2),
(color: #colorLiteral(red: 1, green: 0.2527923882, blue: 1, alpha: 1), name: "Magenta", type: 2),
(color: #colorLiteral(red: 1, green: 0.1857388616, blue: 0.5733950138, alpha: 1), name: "Strawberry", type: 2),
(color: #colorLiteral(red: 1, green: 0.4932718873, blue: 0.4739984274, alpha: 1), name: "Salmon", type: 3),
(color: #colorLiteral(red: 1, green: 0.8323456645, blue: 0.4732058644, alpha: 1), name: "Cantaloupe", type: 3),
(color: #colorLiteral(red: 0.9995340705, green: 0.988355577, blue: 0.4726552367, alpha: 1), name: "Banana", type: 3),
(color: #colorLiteral(red: 0.8321695924, green: 0.985483706, blue: 0.4733308554, alpha: 1), name: "Honeydew", type: 3),
(color: #colorLiteral(red: 0.4500938654, green: 0.9813225865, blue: 0.4743030667, alpha: 1), name: "Flora", type: 3),
(color: #colorLiteral(red: 0.4508578777, green: 0.9882974029, blue: 0.8376303315, alpha: 1), name: "Sprindrift", type: 3),
(color: #colorLiteral(red: 0.4513868093, green: 0.9930960536, blue: 1, alpha: 1), name: "Ice", type: 3),
(color: #colorLiteral(red: 0.4620226622, green: 0.8382837176, blue: 1, alpha: 1), name: "Sky", type: 3),
(color: #colorLiteral(red: 0.476841867, green: 0.5048075914, blue: 1, alpha: 1), name: "Orchid", type: 3),
(color: #colorLiteral(red: 0.8446564078, green: 0.5145705342, blue: 1, alpha: 1), name: "Lavender", type: 3),
(color: #colorLiteral(red: 1, green: 0.5212053061, blue: 1, alpha: 1), name: "Bubblegum", type: 3),
(color: #colorLiteral(red: 1, green: 0.5409764051, blue: 0.8473142982, alpha: 1), name: "Carnation", type: 3),
]
func getAllColors() -> [UIColor] {
let colorArray = self.pencilColors.map { (existingType) -> UIColor in
return existingType.color
}
return colorArray
}
func getBlackAndWhiteColors() -> [UIColor] {
let colorArray = self.pencilColors.filter { (existingColor) -> Bool in
return existingColor.type == 0
}.map { (currentType) -> UIColor in
return currentType.color
}
return colorArray
}
func getDarkColors() -> [UIColor] {
let colorArray = self.pencilColors.filter { (existingColor) -> Bool in
return existingColor.type == 1
}.map { (currentType) -> UIColor in
return currentType.color
}
return colorArray
}
func getMediumColors() -> [UIColor] {
let colorArray = self.pencilColors.filter { (existingColor) -> Bool in
return existingColor.type == 2
}.map { (currentType) -> UIColor in
return currentType.color
}
return colorArray
}
func getLightColors() -> [UIColor] {
let colorArray = self.pencilColors.filter { (existingColor) -> Bool in
return existingColor.type == 3
}.map { (currentType) -> UIColor in
return currentType.color
}
return colorArray
}
func getColorName(fromColor color: UIColor) -> String {
let name = self.pencilColors.first { (existingColor) -> Bool in
return existingColor.color == color
}.map { (existingType) -> String in
return existingType.name
}
return name ?? ""
}
}