ios - 向 UIView 添加多个子层只会显示一个

标签 ios swift uiview calayer

尝试为我的登录系统添加底部边框,我使用了以下代码:

var bottomBorder = CALayer()
bottomBorder.frame = CGRectMake(0.0, userEmailAddressTextField.frame.size.height - 1, userEmailAddressTextField.frame.size.width, 1.0)
bottomBorder.backgroundColor = UIColor.blackColor().CGColor
userEmailAddressTextField.layer.addSublayer(bottomBorder)

我也在尝试对我的密码文本字段执行此操作。我使用了各种技术,但似乎都没有用。

第一次尝试:再次添加相同的代码,这只显示第二个栏的底部边框。

第二次尝试:我尝试了同样的事情,但将不同的变量设为 bottomBordertwo,然后复制代码,但这也行不通。有什么解决办法吗?

最佳答案

创建一个通用函数

func addBottomLayerToTheView(view:UIView)
{
    var bottomBorder = CALayer()
    bottomBorder.frame = CGRectMake(0.0, view.frame.size.height - 1, view.frame.size.width, 1.0)
    bottomBorder.backgroundColor = UIColor.blackColor().CGColor
    view.layer.addSublayer(bottomBorder)
}

在创建 textFields 或任何其他需要底层的 View 后调用此函数,例如:

viewDidLoad()

addBottomLayerToTheView(textField)

addBottomLayerToTheView(textField2)

addBottomLayerToTheView(anyView)

关于ios - 向 UIView 添加多个子层只会显示一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32303403/

相关文章:

ios - 计算数组中具有特定属性值的项目数

尝试执行playerPhysicsBody.node?.addChild(emitter!) 时,Ios 崩溃

objective-c - TextView 处于焦点时隐藏 iPad 键盘的 SDK 安全方法

ios - Swift/iOS subview 在主线程上不立即显示

ios - 应用程序更新时删除数据

iphone - 架构 i386 的重复符号错误

swift - 快速思考 C# 保护访问器的正确方法是什么?

ios - Swift:继承 UITextView 或 UICollectionView 并正确初始化

ios - 弹出到上一个 View 的问题(导航 Controller )

ios - 将多个托管对象上下文与核心数据库一起使用