在 Swift 中更改 UITextView 的 textColor

Posted

技术标签:

【中文标题】在 Swift 中更改 UITextView 的 textColor【英文标题】:Change textColor of a UITextView in Swift 【发布时间】:2016-08-12 21:27:21 【问题描述】:

我正在使用Xcode7Swift2 处理一个ios 项目。我有一个UITextView,我正在尝试更改textColor。它具有黑色背景色。

我查看了here,但找不到setTextColor。我还在UITextView所在的UIViewController下面尝试了没有运气:

@IBOutlet weak var codeText: UITextView!
override func viewDidLoad() 
    super.viewDidLoad()

    self.codeText.delegate = self

    codeText.textColor = UIColor.whiteColor()

然后我进入检查器并尝试单击UITextView 并更改textColor 那里没有改变它的运气。我做错了吗?

谢谢。

【问题讨论】:

【参考方案1】:

在您的 ViewController 上删除该行

self.codeText.delegate = self

您不能将“ViewController”类型的值分配给“UITextViewDelegate”类型的值吗?

codeText.textColor = UIColor.redColor()

工作得很好。

【讨论】:

codeText 是UITextView 类型,可以分配给代理。【参考方案2】:

您确定您的 codeText 变量不是 nil 吗?在我看来,您的代码应该可以工作。请检查 codeText 是否不为零。

【讨论】:

它通过@IBOutlet 连接到我的ViewController。它不是 nil 并且确实显示了我从 ViewController 中分配的文本,只是不会改变颜色。【参考方案3】:

我最终删除了Storyboard 中的UITextField 并添加了一个新的。我像以前一样用@IBOutlet 将它连接到ViewController。然后我去了“产品”和“清洁”。之后我运行了我的项目,它运行良好。我仍然将新添加的UITextView 称为codeText 分配给UITextFieldDelegate,并且工作得很好。一定是刚刚出现了一个错误,需要重新开始。

【讨论】:

【参考方案4】:

你需要添加 NSAttributedString 和 .foregroundColor: UIColor.label

【讨论】:

很高兴提供视觉帮助;但是,您的答案应该解释如何在不需要视觉辅助的情况下解决问题。此外,如果您要提供代码,请在答案正文中以文本形式提供。

以上是关于在 Swift 中更改 UITextView 的 textColor的主要内容,如果未能解决你的问题,请参考以下文章

Swift:更改 UItextView 中文本的按钮?

SWIFT - 改变 UITextView 的高度,xcode 6 GM

SWIFT - 改变 UITextView 的高度,xcode 6 GM

Swift 4 UITableView 将一个单元格设为 UITextView

在 Swift 中的 UITextView 中添加占位符文本?

以编程方式更改键盘输入类型(Swift)