美文网首页iOS-Developer-OCiOS 开发
在storyboard中给Label或Textview添加边框

在storyboard中给Label或Textview添加边框

作者: loveforkeeps | 来源:发表于2015-06-07 13:58 被阅读7822次

先前一直做UI用的是storyboard,想给一个label加边框。

而已知的加边框什么的都是用代码。

然后就在viewDidLoad里加了进去下面几行

label.layer.borderWidth=1;

label.layer.borderColor=[UIColor redColor].CGColor;

那么,该如何在storyboard里设置layer呢?

去Google喽。

以下是我找的

在红圈圈出的地方,我们可以在其中写上layer的属性,

当然不要忘了在.h里#impor<QuartzCore/QuartzCore.h>

列举几种

layer.cornerRadius = 5;

layer.masksToBounds = NO;

layer.borderWidth = .5;

layer.borderColor = [UIColor redColor].CGColor;

layer.shadowColor = [UIColor orangeColor].CGColor;

layer.shadowOpacity = 0.4;

layer.shadowRadius = 5.0;

iphone - can the border of UITextView or UILabel be set in storyboard? - Stack Overflow

上面链接里除了给出的上面的方法外,还有一种

IBInspectable / IBDesignable - NSHipster

这种我觉得更棒。有兴趣的去学习吧。

相关文章

网友评论

  • csqingyang:如果要设置边框的颜色,可以为CALayer添加一个分类,这个分类使用关联对象实现CGColor到UIColor的转换,这样就可以在运行时框中选用这个type为border设置颜色了(keyPath不能通过分类添加新的属性),除了分类,一行代码也没有~
    怎么老是ni:@csqingyang
    我分类里面是这样写的
    #import "CALayer+UIColor.h"

    @Implementation CALayer (UIColor)

    - (void)setBorderColorFromUIColor:(UIColor *)color
    {
    self.borderColor = color.CGColor;
    }

    @EnD
    可是我在xib中用的label还是没有边框
    (附上 我提问的链接 http://zhidao.baidu.com/question/1799176400788635947.html)
    csqingyang:@施羽帝宫情祺
    .h
    //@property (nonatomic, strong) UIColor *borderColorFromUIColor;
    //- (void)setBorderColorFromUI:(UIColor *)color;
    @property(nonatomic, assign) UIColor* borderUIColor;
    ...
    .m
    //#import <objc/runtime.h>

    @Implementation CALayer (LKExtension)
    //- (void)setBorderColorFromUI:(UIColor *)color {
    // self.borderColor = color.CGColor;
    //}
    //
    //- (UIColor *)borderColorFromUIColor {
    // return objc_getAssociatedObject(self, @selector(borderColorFromUIColor));
    //}
    //
    //- (void)setBorderColorFromUIColor:(UIColor *)color {
    // objc_setAssociatedObject(self, @selector(borderColorFromUIColor), color, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    // [self setBorderColorFromUI:self.borderColorFromUIColor];
    //}
    - (void)setBorderUIColor:(UIColor*)color {
    self.borderColor = color.CGColor;
    }

    - (UIColor*)borderUIColor {
    return [UIColor colorWithCGColor:self.borderColor];
    }

    一共两种方法,上面注释掉的是使用运行时解决的,需要添加头文件。没注释的就是使用属性添加的。
    怎么老是ni:@csqingyang 增加了分类就可以在xib中对borderColor 进行设置了吗? 我现在遇到了一种情况就是xib中设置layer.borderWidth 和 layer.borderColor 没有用 我估计是layer.borderColor的颜色的问题 不知道您能不能把CALayer的分类让我看一下

本文标题:在storyboard中给Label或Textview添加边框

本文链接:https://www.haomeiwen.com/subject/jcidqttx.html