zoukankan      html  css  js  c++  java
  • 【iOS开发-图层】图层的获取与一些属性

    图层

    每个控件都有自己的一个图层,这个空间的全部东西就是显示在这个图层上面的,控件本身没有显示东西的功能,仅仅有拥有了图层才干显示东西

    图层的获取

    CALayer *layer = self.testView.layer;

    使用UIView的图层为例

    UIView本身仅仅有一个图层,主图层

    self.testView.layer.borderWidth = 10;//设置边框大小
        self.testView.layer.borderColor = [UIColor blueColor].CGColor;//设置边框颜色
        self.testView.layer.cornerRadius = 10;//设置view的圆角
        self.testView.layer.shadowOffset = CGSizeMake(10, 10);//设置阴影。默认黑色透明。后面是阴影偏差(阴影会向哪个方向偏)右下角全正数
        self.testView.layer.shadowColor = [UIColor blackColor].CGColor;//给阴影设置颜色
        self.testView.layer.shadowOpacity = 0.5;//设置透明度
    
     self.testView.layer.masksToBounds = YES;//设置超出主层的东西会被剪掉。阴影不显示也是这个原因

    UIImageView为例圆角实现

    UIImageView控件不止一个图层。图片的显示不是在主层中,所以更改主层的边角为原型。并不能改变图片显示层的边角

     self.imageView.layer.borderWidth = 10;//设置边框宽度大小
     self.imageView.layer.borderColor = [UIColor blueColor].CGColor;//设置边框颜色
    
    //设置图层圆角。由于UIImageView有两个图层,图片显示在复层上面,
    //所以仅仅设置这一个属性不会变为圆角
    //要把 masksToBounds属性设置为YES
    self.imageView.layer.cornerRadius = 10;
    self.imageView.layer.masksToBounds = YES;//超出主层的内容都会被减掉

    关于layer层的旋转,平移,缩放

    layer的仅仅能使用3D旋转,平移,缩放

    self.imageView.layer.transform = CATransform3DMakeRotation(M_PI_4, 1, 0.5, 0);//layer层的旋转,使用3D
    
    //控制缩放    使用KVC
    NSValue *value = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI_4, 0, 0, 1)];
    [self.imageView.layer setValue:value forKeyPath:@"transform"];
    
    //等于上面的两句话  使用KVC
    [self.imageView.layer setValue:@(M_PI_2) forKeyPath:@"transform.rotation"];
    
    //控件本身的缩放和旋转
    self.imageView.transform = CGAffineTransformMakeRotation(M_PI_4);
    self.imageView.transform = CGAffineTransformMakeScale(1.5, 1.5);
  • 相关阅读:
    Visual Studio.Net 已检测到指定的Web服务器运行的不是ASP.NET1.1版。您将无法运行ASP.NET Web应用程序或服务。
    ActiveX 部件不能创建对象
    XML Schema帮你建模
    XBRL CHINA - XBRL入门
    Xml文档验证—编程篇
    怎样用XML技术对数据库进行操作
    Vclskin 问答
    Altova XMLSpy Ent 2006 汉化特别版 破解版
    一个通过DataSet操作XML的类
    XML Schema教程
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5385916.html
Copyright © 2011-2022 走看看