-
カラーアセットの作成: XcodeのAssets.xcassetsファイルを開き、新しいカラーセットを作成します。ダークモードとライトモードの両方で使用するカラーを定義します。例えば、"IconColor"という名前のカラーセットを作成します。
-
アイコンの作成: アイコン画像を作成するか、既存のアイコンを使用します。アイコンの色はカラーアセットから取得するため、アイコン画像はモノクロのものである必要があります。
-
SwiftUIでのカラーアセットの使用: アイコンを表示するビューで、カラーアセットを使用してアイコンの色を設定します。以下は、シンプルな例です。
import SwiftUI
struct IconView: View {
@Environment(\.colorScheme) var colorScheme
var body: some View {
Image(systemName: "heart.fill")
.foregroundColor(colorScheme == .dark ? Color("IconColor-Dark") : Color("IconColor-Light"))
}
}
struct ContentView: View {
var body: some View {
VStack {
Text("アプリのコンテンツ")
IconView()
}
}
}
上記の例では、IconView
内で環境変数colorScheme
を使用して現在のカラーモードを取得しています。その値に基づいて、ダークモードの場合は"IconColor-Dark"
、ライトモードの場合は"IconColor-Light"
という名前のカラーアセットから色を取得します。これにより、ダークモードとライトモードの両方で正しい色が適用されます。
これで、SwiftUIでダークモードとライトモードでアイコンにカラーアセットを使用する方法がわかりました。必要に応じて、上記のコードをカスタマイズして自分のアプリに適用してください。