zoukankan      html  css  js  c++  java
  • 静态分析错误更正

    使用了下面报错Passed-by-value struct argument contains uninitialized data (e.g., via the field chain: 'origin.x')

    - (instancetype)init

    {

        if (self = [super init]) {

            

            CGRect viewSize;

            viewSize.size.width = viewSize.size.height = layerViewWH;

            self.frame = viewSize;

            self.backgroundColor = [UIColor clearColor];

        }

        return self;

    }

    改成下面就好了

    - (instancetype)initWithFrame:(CGRect)frame

    {

        if (self = [super initWithFrame:CGRectMake(0, 0, layerViewWH, layerViewWH)]) {

            self.backgroundColor = [UIColor clearColor];

         }

        return self;

    }

    //后来知道了CGRect使用之前记得初始化,应该这样使用

    - (instancetype)init

    {

        if (self = [super init]) {

            

            CGRect viewSize = CGRectZero;

            viewSize.size.width = viewSize.size.height = layerViewWH;

            self.frame = viewSize;

            self.backgroundColor = [UIColor clearColor];

        }

        return self;

    }

    2.使用且图片的时候,造成的内存泄露

    UIImage *image = [UIImage imageNamed:@"AppIcon"];

    CGImageRef imageRef = CGImageCreateWithImageInRect([image CGImage], viewSize);

            

     UIImage *imageS = [UIImage imageWithCGImage:imageRef];

            

    加上这句就好了        CGImageRelease(imageRef);

  • 相关阅读:
    android Serializable 和 Parcelable 区别
    Android HttpClient 用法以及乱码解决
    android 头像选择以及裁剪
    播放动画
    跑马灯效果
    Paint基本属性
    安卓开发中的各种事件
    View类和surfaceView详细介绍
    hadoop资源
    wsdl文件转换为java
  • 原文地址:https://www.cnblogs.com/chaoyueME/p/5977320.html
Copyright © 2011-2022 走看看