zoukankan      html  css  js  c++  java
  • iOS 在xib或storyboard里为控件添加圆角、外框和外框颜色

    如果要在xib和storyboard里为控件添加圆角和外框宽度,只要这样做就可以

    layer.borderWidth     设置外框宽度属性

    layer.cornerRadius    设置圆角属性

    只要为属性设置value值就可以了

    当然修改完xib里看是看不出来的,要运行才看得到,效果如下

    那如果要在xib和storyboard里修改外框颜色怎么办??只有用加其他方法才能实现,例如分类

    添加分类

    再来就是

    生成这文件

    .h文件里

    1 #import <QuartzCore/QuartzCore.h>
    2 
    3 @interface CALayer (LayerColor)
    4 
    5 - (void)setBorderColorFromUIColor:(UIColor *)color;
    6 
    7 @end

    .m文件里

    添加一个set方法

     1 #import "CALayer+LayerColor.h"
     2 
     3 @implementation CALayer (LayerColor)
     4 
     5 - (void)setBorderColorFromUIColor:(UIColor *)color
     6 {
     7     self.borderColor = color.CGColor;
     8 }
     9 
    10 @end

    假如你的UIColor提示错误找不到,那是你没有导入UIKit框架

    那就在.h或者全局头文件里导入

    #import <UIKit/UIKit.h>

    这样就完成基本工作了

    现在在xib或者storyboard里面像之前添加控件外框和圆角一样操作,在添加该属性

    type为color

    要注意这是set方法,所以假如分类里添加的方法为

    - (void)setBorderColorFromUIColor:(UIColor *)color;

    那么属性里就应该为layer.borderColorFromUIColor

    假如是

     - (void)setColorFromUIColor:(UIColor *)color;

    那属性里就为layer.colorFromUIColor

    运行:

     

    如果要加上背景颜色,加完颜色后要给控件设置属性

    _btn.layer.masksToBounds = YES;

    再key path里面是   layer.masksToBounds,设置完就ok了

    这样就明白该方法是怎么使用的了,不然设置颜色还是无效的,因为使用方法不对,就是这样了。

  • 相关阅读:
    mysql 主从架构搭建
    tomcat+nginx 反向代理 动静分离
    ELK(Elasticsearch + Logstash + Kibana)安装部署对nginx的日志收集
    Kibana server is not ready yet出现的原因
    apache+tomcat+单机双实例+动静分离+负载均衡
    docker的基本安装和简单使用+Dockerfile常用指令
    LVS+keepalived+DR 负载均衡高可用
    md5sum摘要
    python爬虫
    python和数据库
  • 原文地址:https://www.cnblogs.com/fcug/p/5417144.html
Copyright © 2011-2022 走看看