Swiftuiでは、アセットカタログのカラーセットを使用してカラーセットから色を取得できます。
extension Color {
static let coral = Color("coral")
}
_
これには文字列に設定された名前が必要で、多くのカラーセットでは非常に面倒です。アセットカタログから画像を取得するには、画像リテラルを使用する方法と同様のカラーセットを取得する別の方法がありますか?または、冗長なものだけではありません。
そうでない場合は、Swiffuiでプログラム的に動的な色が作成されていますか?たとえば、UIKitで行われる方法です。
extension UIColor {
static let dynamicColor = UIColor { $0.userInterfaceStyle == .dark ? .black : .white }
}
_
資産カタログの動的色を定義するための代替方法を共有したいが、ような退屈なコードを書く必要はない
Color("yellow")
_
/// ColorExtension.Swift
static let ui = Color.UI()
struct UI {
let yellow = Color("yellow")
}
_
このようなあなたの色を使う:
Text("Hello").background(Color.ui.yellow)
_
これは、1回だけのコードにハードコーディングされた色を書き込む必要があります。