【问题标题】:How can I change the placeholder (label) color for MDCOutlinedTextFields?如何更改 MDCOutlinedTextField 的占位符(标签)颜色?
【发布时间】:2022-11-06 08:42:52
【问题描述】:

我很难更改占位符标签的文本颜色,该标签在不聚焦时用作提示,在聚焦时用作顶部的标签。 (下图)

我要切换出所有 MDC-TextFields 和 MDC-TextInputControllers 的原因是因为它们都被新的 MDC-Outlined Textfields 弃用了。

下面的代码是扩展中的一个函数,它可以简单地为整个应用程序中的所有 MDC 轮廓文本字段设置一般背景和子标签颜色。

我尝试了许多没有运气的功能(在下面注释掉)。

extension MDCOutlinedTextField {
    
    func setUpGeneralBackgroundColors(){
        
        
        //Text color
       self.setTextColor(UIColor.white, for: .normal)
        self.setTextColor(UIColor.white, for: .editing)
        
        //Border color
        self.setOutlineColor(UIColor.white, for: .normal)
        self.setOutlineColor(UIColor.white, for: .editing)
        
        //self.setFloatingLabelColor(UIColor.white, for: .normal)
        //self.setFloatingLabelColor(UIColor.white, for: .editing)
        //self.setFloatingLabelColor(UIColor.white, for: .disabled)

     // self.setNormalLabelColor(UIColor.purple, for: .normal)
      //  self.setNormalLabelColor(UIColor.purple, for: .editing)
       // self.setNormalLabelColor(UIColor.purple, for: .disabled)
        
       // self.label.tintColor = UIColor.purple
        //self.label.textColor = UIColor.systemPink
        //self.label.shadowColor = UIColor.cyan
        //self.label.backgroundColor = UIColor.red
        
        //Changes icon colors within the text field if any
        self.tintColor = .green
        
    }
}

【问题讨论】:

    标签: swift mdc-components


    【解决方案1】:

    我发现了这个问题,在我有这些新文本字段的情节提要中,我有一个占位符的原始字符串,它覆盖了幕后的快速代码并阻止我更改颜色。

    注意:现在已弃用的 MDC-Textfields 不会出现此问题。

    如果你们在情节提要中使用这些 MDC 大纲文本字段时在情节提要中有占位符值,(不要与 swift 代码混淆)然后摆脱它们。

    【讨论】:

      猜你喜欢
      • 2019-02-21
      • 1970-01-01
      • 2019-10-09
      • 2012-04-12
      • 1970-01-01
      • 2012-08-03
      • 2012-04-01
      • 2021-09-28
      • 1970-01-01
      相关资源
      最近更新 更多