黑暗模式和洛蒂动画

发布于 2025-01-17 21:49:42 字数 1188 浏览 3 评论 0原文

我正在使用Lottie在我的应用程序中的着陆页上显示徽标动画。

我用白色背景和黑色背景制作了动画。根据黑暗模式的状态,我想展示白色或黑色。

到目前为止的代码(正常运行):

    var body: some View {
    VStack {
        TabView(selection: $selection) {
                VStack(spacing: 0) {
                    Spacer()
                    Text("Title")
                        .font(.largeTitle)
                    Rectangle()
                        .fill(Color.secondary.opacity(0.2))
                        .frame(height: 1)
                    
                    VStack(alignment: .leading) {
                        LottieView(name: "logowhite")
                            .scaledToFit()
                            .padding(60)
                        
                        Text("Detail")
                        Text("")
                        
                        HStack() {
                            Spacer()
                            Text("Copyright")
                            Spacer()
                        }
                        
                   }.padding()
                    
                    Spacer()
                }
        }

我可以测试是否打开黑模式,然后显示“ loglakback”而不是“ logowhite”?

I'm using Lottie to display a logo animation on a landing page in my app.

I made that animation with a white background and also with a black background. Depening on the state of dark mode I want to show the white or the black one.

The code so far (that works fine):

    var body: some View {
    VStack {
        TabView(selection: $selection) {
                VStack(spacing: 0) {
                    Spacer()
                    Text("Title")
                        .font(.largeTitle)
                    Rectangle()
                        .fill(Color.secondary.opacity(0.2))
                        .frame(height: 1)
                    
                    VStack(alignment: .leading) {
                        LottieView(name: "logowhite")
                            .scaledToFit()
                            .padding(60)
                        
                        Text("Detail")
                        Text("")
                        
                        HStack() {
                            Spacer()
                            Text("Copyright")
                            Spacer()
                        }
                        
                   }.padding()
                    
                    Spacer()
                }
        }

Can I test if dark mode is on, and then display 'logoblack' instead of 'logowhite'?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你的他你的她 2025-01-24 21:49:42
@Environment(\.colorScheme) var colorScheme

var body: some View {
    VStack {
        TabView(selection: $selection) {
                VStack(spacing: 0) {
                    Spacer()
                    Text("Title")
                        .font(.largeTitle)
                    Rectangle()
                        .fill(Color.secondary.opacity(0.2))
                        .frame(height: 1)
                    
                    VStack(alignment: .leading) {
                        if colorScheme == .dark {
                            LottieView(name: "logoblack")
                            .scaledToFit()
                            .padding(60)
                        } else {
                            LottieView(name: "logowhite")
                            .scaledToFit()
                            .padding(60)
                        }

                        Text("Detail")
                        Text("")
                        
                        HStack() {
                            Spacer()
                            Text("Copyright")
                            Spacer()
                        }
                        
                   }.padding()
                    
                    Spacer()
                }
        }
@Environment(\.colorScheme) var colorScheme

var body: some View {
    VStack {
        TabView(selection: $selection) {
                VStack(spacing: 0) {
                    Spacer()
                    Text("Title")
                        .font(.largeTitle)
                    Rectangle()
                        .fill(Color.secondary.opacity(0.2))
                        .frame(height: 1)
                    
                    VStack(alignment: .leading) {
                        if colorScheme == .dark {
                            LottieView(name: "logoblack")
                            .scaledToFit()
                            .padding(60)
                        } else {
                            LottieView(name: "logowhite")
                            .scaledToFit()
                            .padding(60)
                        }

                        Text("Detail")
                        Text("")
                        
                        HStack() {
                            Spacer()
                            Text("Copyright")
                            Spacer()
                        }
                        
                   }.padding()
                    
                    Spacer()
                }
        }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文