Arv*_*ake 12 ios uitextfielddelegate swift
我正在使用以下自定义文本字段类来更改文本字段的外观.现在,当用户开始编辑和结束编辑文本字段时,我需要更改文本字段的背景颜色,文本颜色和占位符颜色.怎么做,使用这个类.
import Foundation
import UIKit
class CustomTextField: UITextField{
    required init(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        //Border
        self.layer.cornerRadius = 15.0;
        self.layer.borderWidth = 1.5
        self.layer.borderColor = UIColor.whiteColor().CGColor
        //Background
        self.backgroundColor = UIColor(white: 1, alpha: 0.0)
        //Text
        self.textColor = UIColor.whiteColor()
        self.textAlignment = NSTextAlignment.Center
    }
}
Een*_*dje 10
在您的CustomTextField课程中,您可以添加属性观察者:
var change: Bool = false {
    didSet {
        textColor = change ? .yellow : .black
        backgroundColor = change ? .blue : .white
    }
}
并在您的ViewController中:
func textFieldDidBeginEditing(textField: UITextField) {
    customTextField.change = true
}
func textFieldDidEndEditing(textField: UITextField) {
    customTextField.change = false
}
不要忘记在故事板中或以编程方式设置文本字段的代理.
编辑:
缩短代码并更新为Swift 3
根据文档将 self 添加为您需要的 UIControl 事件的目标
那里有 EditingDidBegin 等的控制事件。
像这样的东西:
self.addTarget(self, action: "myFunc", forControlEvents: UIControlEvents.EditingDidBegin);
| 归档时间: | 
 | 
| 查看次数: | 25033 次 | 
| 最近记录: |