美文网首页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