欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[转]IOS UIView 之属性篇

程序员文章站 2022-07-15 16:41:47
...
UIView 继承于UIResponder
            所遵守的协议有 NSCoding 、UIAppearance、 UIAppearanceContainer
                                 UIDynamicItem、 NSObject
从继承的类我们就可以看出 UIView 这个类可以响应手势

那么我们就从它的属性开始这一旅程吧

UIView 之属性篇  Properties



@property(nonatomic) CGFloat alpha 

//设置视图的透明度
//透明度的设置从最小0.0到1.0 ,1.0为完全不透明,
//其中这个属性只影响当前视图,并不会影响其子视图


@property(nonatomic, getter=isOpaque) BOOL opaque
//决定当前视图是否是透明的

@property(nonatomic) BOOL autoresizesSubviews
//这个属性是决定当视图大小边界发生改变时,其子视图是否也跟着自动调整大小

@property(nonatomic) UIViewAutoresizing autoresizingMask
//决定当当前视图的父视图大小发生变化时,当前视图该怎么调整自己的size

@property(nonatomic, copy) UIColor *backgroundColor  //当前视图的背景色

@property(nonatomic) CGRect bounds 
//当前视图的边界,包括大小和原点,这里是在系统坐标系下
@property(nonatomic) CGRect frame
//当前视图的边界,包括大小和原点,这里是在父视图的坐标系下
@property(nonatomic) CGPoint center  //当前视图的中心,并指定是在父视图的坐标系下

@property(nonatomic) BOOL clearsContextBeforeDrawing 
//决定在视图重画之前是否先清理视图以前的内容,缺省值为YES
//如果你把这个属性设为NO,那么你要保证能在 drawRect:方法中正确的绘画。如果你的代码
//已经做了大量优化,那么设为NO可以提高性能,尤其是在滚动时可能只需要重新绘画视图的一部分

@property(nonatomic) BOOL clipsToBounds 
//决定子视图是否被限定在当前视图的bounds中,缺省值为NO

@property(nonatomic) UIViewContentMode contentMode
//决定当视图边界变时呈现视图内容的方式

@property(nonatomic) CGFloat contentScaleFactor
//应用到当前视图的比例Scale

@property(nonatomic, getter=isExclusiveTouch) BOOL exclusiveTouch
//决定当前视图是否是处理触摸事件的唯一对象

@property(nonatomic, copy) NSArray *gestureRecognizers
//当前视图所附加的手势识别器

@property(nonatomic, getter=isHidden) BOOL hidden
//当前视图是否隐藏

@property(nonatomic, readonly, retain) CALayer *layer
//用于视图渲染的核心动画层

@property(copy, nonatomic) NSArray *motionEffects
//当前视图的运动效果,IOS7才开始拥有

@property(nonatomic, getter=isMultipleTouchEnabled) BOOL multipleTouchEnabled
//当前视图是否接受多点触控事件,缺省值为NO

@property(nonatomic, copy) NSString *restorationIdentifier
//该标示符决定该视图是否支持恢复状态,其实也只是个标示符而已
//个人觉得就相当于配置表视图每个单元格时使用的标示符一样,可以直接在内存中重用,提高了性能
//还有一点需注意,不应该简单的定义这个标示符,因为其所属的view controller ,还有view controller的
//所有 父view controllers都必须有一个恢复标识符

@property(nonatomic, readonly, copy) NSArray *subviews  //当前视图的所有子视图
@property(nonatomic, readonly) UIView *superview //当前视图的父视图

@property(nonatomic) NSInteger tag  //当前视图的标签

@property(nonatomic) UIViewTintAdjustmentMode tintAdjustmentMode
//色调调整模式,开始用于IOS7
@property(nonatomic, retain) UIColor *tintColor
//色调颜色,开始用于IOS7

@property(nonatomic) CGAffineTransform transform  //视图的仿射变换

@property(nonatomic, getter=isUserInteractionEnabled) BOOL userInteractionEnabled
//决定与用户交互事件是否从被忽略并从事件队列中移除

@property(nonatomic, readonly) UIWindow *window  //当前视图上的UIWindow对象
相关标签: IOS UIview