关于 Expression is not assignable 错误

1.在 Build Phases中导入  UIKit.framework 

 

2.在pch中导入头文件

#import <UIKit/UIKit.h>

 

3.写一个分类

即可解决

贴出分类代码

 

 ......h文件

#import <UIKit/UIKit.h>

 

@interface UIView (Extension)

@property (nonatomic, assign) CGFloat x;

@property (nonatomic, assign) CGFloat y;

@property (nonatomic, assign) CGFloat centerX;

@property (nonatomic, assign) CGFloat centerY;

@property (nonatomic, assign) CGFloat width;

@property (nonatomic, assign) CGFloat height;

@property (nonatomic, assign) CGSize size;

@property (nonatomic, assign) CGPoint origin;

@end

 

.....m文件

#import "UIView+Extension.h"

 

@implementation UIView (Extension)

 

- (void)setX:(CGFloat)x

{

    CGRect frame = self.frame;

    frame.origin.x = x;

    self.frame = frame;

}

 

- (void)setY:(CGFloat)y

{

    CGRect frame = self.frame;

    frame.origin.y = y;

    self.frame = frame;

}

 

- (CGFloat)x

{

    return self.frame.origin.x;

}

 

- (CGFloat)y

{

    return self.frame.origin.y;

}

 

- (void)setCenterX:(CGFloat)centerX

{

    CGPoint center = self.center;

    center.x = centerX;

    self.center = center;

}

 

- (CGFloat)centerX

{

    return self.center.x;

}

 

- (void)setCenterY:(CGFloat)centerY

{

    CGPoint center = self.center;

    center.y = centerY;

    self.center = center;

}

 

- (CGFloat)centerY

{

    return self.center.y;

}

 

- (void)setWidth:(CGFloat)width

{

    CGRect frame = self.frame;

    frame.size.width = width;

    self.frame = frame;

}

 

- (void)setHeight:(CGFloat)height

{

    CGRect frame = self.frame;

    frame.size.height = height;

    self.frame = frame;

}

 

- (CGFloat)height

{

    return self.frame.size.height;

}

 

- (CGFloat)width

{

    return self.frame.size.width;

}

 

- (void)setSize:(CGSize)size

{

    CGRect frame = self.frame;

    frame.size = size;

    self.frame = frame;

}

 

- (CGSize)size

{

    return self.frame.size;

}

 

- (void)setOrigin:(CGPoint)origin

{

    CGRect frame = self.frame;

    frame.origin = origin;

    self.frame = frame;

}

 

- (CGPoint)origin

{

    return self.frame.origin;

}

@end

 

posted @ 2019-04-09 16:03  叢叢的博客园  阅读(982)  评论(0编辑  收藏  举报