私は単純なカスタムNSView
を作成しています。これにより、ユーザーはR、G、B値のそれぞれに3つのテキストフィールドを入力できます。私はすでにこの質問と回答のセットhereを参照しました - それはSwift 2.0
までしか説明しません。だから、誰もこの同じ効果を得るための正しいテクニックを知っていますか?Swift 3.0
?私は働くことを何とかしているようには見えません。私はあらゆる種類の誤りを続けています。NSViewの色を変更する
はここで私が使用している現在の技術だ(これは動作するようです...しかし、それは@IBAction
に使われているので、それは、他の2つのRGB
値を考慮していません):
//viewDidLoad
RVCustomView.wantsLayer = true
@IBAction func redValue(_ sender: AnyObject) {
print(red.stringValue)
var rValue = 0
let str = red.stringValue
if let n = NumberFormatter().number(from: str) {
rValue = Int(CGFloat(n))
}
CustomNSView.layer?.backgroundColor = CGColor(red: rValue, green: 255, blue: 255, alpha: 255)
}
これは機能しません。 Swift 3では、色を調整する前に '.layer?.groundColor'を使用する必要があります。これを行う別の方法がない限り。しかし、これは私がそれを働かせることができた唯一の方法です。 – KSigWyatt