Ios UITextField shadow赢了';不显示
在我的xib文件中,我创建了一个通用函数,通过该函数,我希望通过对这些文本字段实现阴影来添加底部边框Ios UITextField shadow赢了';不显示,ios,swift,swift3,Ios,Swift,Swift3,在我的xib文件中,我创建了一个通用函数,通过该函数,我希望通过对这些文本字段实现阴影来添加底部边框 func setupTextField(textField: UITextField) { textField.leftViewMode = UITextFieldViewMode.always let imageView = UIImageView(); let image = UIImage(named: "calendar");
func setupTextField(textField: UITextField) {
textField.leftViewMode = UITextFieldViewMode.always
let imageView = UIImageView();
let image = UIImage(named: "calendar");
imageView.image = image;
imageView.frame = CGRect(x: 5, y: 8, width: 20, height: 20)
textField.addSubview(imageView)
let paddingView = UIView(frame: CGRect(x: 0, y: 0, width: 40, height: textField.frame.height))
textField.leftView = paddingView
textField.borderStyle = .none
textField.layer.backgroundColor = UIColor.white.cgColor
textField.layer.masksToBounds = false
textField.layer.shadowColor = UIColor(hex: "#D8D8D8").cgColor
textField.layer.shadowOffset = CGSize(width: 0.0, height: 1.0)
textField.layer.shadowOpacity = 1.0
textField.layer.shadowRadius = 0.0
}
我从我的awakeFromNib()
方法调用了这个函数,结果它在我的第二个UITextField
上添加了阴影,但在第一个上没有。虽然从调试中我可以看到,如果没有第二个UITextField
,那么这将在我的第一个上画一个阴影
如何克服这个问题?Textfield shadow
swift 4.2
textFieldDOB.backgroundColor = UIColor.white textFieldDOB.clipsToBounds = false
textFieldDOB.layer.shadowColor = UIColor.black.cgColor
textFieldDOB.layer.shadowOffset = CGSize.zero
textFieldDOB.layer.shadowOpacity = 0.3
textFieldDOB.layer.shadowRadius = 6
textFieldDOB.borderStyle = .none
文本场阴影
swift 4.2
textFieldDOB.backgroundColor = UIColor.white textFieldDOB.clipsToBounds = false
textFieldDOB.layer.shadowColor = UIColor.black.cgColor
textFieldDOB.layer.shadowOffset = CGSize.zero
textFieldDOB.layer.shadowOpacity = 0.3
textFieldDOB.layer.shadowRadius = 6
textFieldDOB.borderStyle = .none
关于swift 4、swift 4.2、swift 5,请参考以下答案 可以为任何UIView子类(imageview、label、textfield、textview等)提供阴影
关于swift 4、swift 4.2、swift 5,请参考以下答案 可以为任何UIView子类(imageview、label、textfield、textview等)提供阴影
显示调用此函数的代码。使用:
textField.clipsToBounds=false
我这样做了,但@shallow不起作用,尽管您需要设置背景色以清除调用此函数的代码。使用:textField.clipsToBounds=false
我这样做了,但@shallow不起作用,尽管您需要设置ClearTextField的背景色没有“borderStye”属性,此代码即使在删除的情况下也不起作用。TextField没有“borderStye”属性,此代码即使在删除的情况下也不起作用。不适用于TextField。不适用于TextField。