当前位置: 首页 > 知识库问答 >
问题:

斯威夫特如何获得动态色彩?

戴正阳
2023-03-14

我有一个配置文件,我想在那里更改颜色。但是在我的视图中,函数背景(bg1Color)给我错误;

参数类型“UIColor”不符合预期的类型“视图”

我该如何解决这个问题?

我的配置文件;

import UIKit
import Foundation

// Backgrounds
var bg1Color: UIColor = .black

我的功能代码;

.background(bg1Color) // HERE
.cornerRadius(10)

共有2个答案

谭景福
2023-03-14

它不是UIColor

 import SwiftUI

 var bg1Color : Color = .black
李疏珂
2023-03-14

. background修饰符采用View,与SwiftUI的Color不同,UIKit的UIColor不符合View协议(默认情况下)。

因此,您需要从UIColor创建颜色>,然后将其传递给 修饰符。

.background(Color(bg1Color))

或者直接:

.background(Color(.black))

< code>UIColor和< code>Color预定义的命名颜色不相同!而且他们深浅不一!

因此,您不应该只是将UI颜色替换为颜色

实际上SwiftIUI.Color.red等于UIKit.UIClor.systemRed

 类似资料:
  • 问题内容: 为了在使用Swift时与C API集成,我需要使用sizeof函数。在C语言中,这很容易。在Swift中,我处于类型错误的迷宫中。 我有以下代码: 第二行显示错误“’NSNumber’不是’T.Type’的子类型”。为什么会这样,我该如何解决? 问题答案: 使用sizeof如下: 使用类型作为参数。 如果您想要变量的大小,可以将该字段传递给。 像这样: 或更简单地说(由user1020

  • 问题内容: 我正在学习快速,并试图理解字典。我已经习惯了PHP,您可能会在其中编写以下内容… 在此示例中,将按以下顺序输出值:1、2、3 我的快速代码看起来像这样… 但是,值以意外的顺序出现。我可以做些干净的事情来保持值的创建顺序,还是不能对字典进行快速排序? 问题答案: 正如已经回答的那样,词典的要点是未排序。Swift(和Objective-C)中有三种类型的集合 数组是项目的有序列表。当项目

  • 问题内容: 什么之间的区别,以及何时该使用的呢? 例如,在Python中,如果我想打印字典,我只是,但是现在有2个其他选项。我应该如何以及何时使用它们? 问题答案: 一些区别: vs : 调试应用程序时,该功能在Xcode控制台中打印消息。 这是Swift 2中已删除且不再使用的变体。如果看到正在使用的旧代码,则可以安全地将其替换为。 回到Swift 1.x,没有在打印字符串的末尾添加换行符,而是

  • 问题内容: NS和非NS类之间有什么区别?特别是vs ?是否代表围绕核心非功能性的某种包装器? 问题答案: Swift 3 为现有Foundation类类型引入了一些新的 覆盖值类型 ,例如for ,for 等。完整列表和详细信息可以在下面找到 SE-0069变异性和基础价值类型 一些原因是 提供适当的值语义, 而不是可变且不可变的变体, 更多的“ Swifty” API。 新的叠加层类型应提供相

  • 问题内容: 我一直在尝试实现单例,以用作我从网络上传到我的iOS应用的照片的缓存。我在下面的代码中附加了三个变体。我试图使版本2正常工作,但是它导致了我不理解的编译器错误,并希望就我做错的事情寻求帮助。变体1进行缓存,但我不喜欢使用全局变量。变体3并没有进行实际的缓存,我相信这是因为我在赋给var ic = ....的赋值中获得了副本,对吗? 任何反馈和见解将不胜感激。 谢谢Zvi 问题答案: 标

  • 问题内容: 我一直在阅读有关Swift中Optional的内容,并且看到了一些示例,这些示例用于检查Optional是否持有值,并且在可能的情况下–使用未包装的值进行操作。 但是,我已经看到在Swift 2.0中关键字是最常用的。我想知道是否已从Swift 2.0中删除或是否仍然可以使用它。 我应该改变我的计划包含到? 问题答案: 并达到相似但截然不同的目的。 的“其他”情况必须退出当前范围。通常