我目前正在设计UITextView样式,使其看起来像使用以下代码的文本字段:
//To make the border look very close to a UITextField
[_smsMessage.layer setBorderColor:[[[UIColor grayColor] colorWithAlphaComponent:0.5] CGColor]];
[_smsMessage.layer setBorderWidth:0.5];
//The rounded corner part
_smsMessage.layer.cornerRadius = 5;
_smsMessage.clipsToBounds = YES;
// Make append text view match
[_smsAppend.layer setBorderColor:[[[UIColor grayColor] colorWithAlphaComponent:0.5] CGColor]];
[_smsAppend.layer setBorderWidth:0.5];
//The rounded corner part
_smsAppend.layer.cornerRadius = 5;
_smsAppend.clipsToBounds = YES;
它会在周围放置一个薄边框然后围绕边缘。
但我想做的是除了底部之外的所有边都有这个边框(因此左边,顶边和右边都有边框,底部露出来)。
我不确定如何实现这一点,有没有人有任何想法? - 我试图在网上进行研究,但我认为经验的好处将在这一方面发挥作用。
我认为我将不得不使用某种子视图(或一组子视图),任何人都可以提出建议吗?
答案 0 :(得分:1)
创建9段图像并将其设置为背景,而不是摆弄边框。
答案 1 :(得分:1)
我认为没有任何内置支持。
您可以创建与视图大小相同的CAShapeLayer,然后将CGPath添加到图层。路径将是线段和弧段的组合。如果你查看如何构造一个圆角矩形,你会发现如何从线段构建一个圆弧的解释。
然后,您可以将形状图层添加为视图内容图层的子图层。