如何设置这种类型的底部边框文本字段?

时间:2016-12-13 09:22:51

标签: ios objective-c iphone

如何只设置底部边框文本字段?我用过什么样的编码...

我想要这种类型的输出屏幕

I want this type of output screen

这是我的编码

border = [CALayer layer];
    CGFloat borderWidth = 2;
    border.borderColor = [UIColor whiteColor].CGColor;
    border.frame = CGRectMake(0, firstname.frame.size.height - borderWidth, firstname.frame.size.width, firstname.frame.size.height);
    border.borderWidth = borderWidth;
    [firstname.layer addSublayer:border];
    firstname.layer.masksToBounds = YES;

3 个答案:

答案 0 :(得分:2)

如果您想在不使用UITableView的情况下执行此操作,

请尝试以下代码:

CALayer *yourborder = [CALayer layer];
CGFloat borderWidth = 2;
yourborder.borderColor = [UIColor darkGrayColor].CGColor;
yourborder.frame = CGRectMake(0, firstname.frame.size.height - borderWidth, firstname.frame.size.width, firstname.frame.size.height);
yourborder.borderWidth = borderWidth;
[firstname.layer addSublayer:yourborder];
firstname.layer.masksToBounds = YES;

答案 1 :(得分:0)

UITableView用于此类表单,并使用tableview的底部边框使用行分隔符,并使用下面的textFiled类型作为您的愿望输出。

txtName.borderStyle = UITextBorderStyleNone;

希望这会对你有所帮助。

答案 2 :(得分:0)

在UIView上创建扩展

     //extension
     extension UIView {

          func bottomBorder(color color: UIColor, width: CGFloat) {
                let border = CALayer()
                border.backgroundColor = color.CGColor
                border.frame = CGRectMake(0, self.frame.size.height - width, self.frame.size.width, width)
                border.masksToBounds = true
                self.layer.addSublayer(border)
           }
    }

将此方法称为

firstname.bottomBorder(color: UIColor.whiteColor(), width: 2)

对于您尝试的效果,您可以使用UITableview