UIView
属性
1.alpha
设置视图的透明度
.
默认为
1.
//
完全透明
view
.
alpha
=
0
;
//
不透明
view
.
alpha
=
1
;
2.clipsToBounds
//
默认是
NO
,当设置为
yes
时,超出当前视图的尺寸的内容和子视图
不会显示。
view
.
clipsToBounds
=
YES
;
3.hidden
//
默认是
NO
,当设置为
yes
,视图就看不见了。
view
.
hidden
=
YES
;
4.userInteractionEnabled
//
默认为
YES
,如果设置为
No
,
view
就不能和用户交互了。
(即不能
响应事件)
view
.
userInteractionEnabled
=
NO
;
5. tag
//
默认为
0
,用来标记视图的
view
.
tag
=
0
;
5.
exclusiveTouch
默认为
No
exclusiveTouch
的意义在于:如果当前设置了
exclusiveTouch
的
UIView
是整个触摸事件的第一响应者,那么到你所有的手指离开屏
幕前其他的
UIView
是无法接受到整个事件周期内所有的触摸事件。
6.CGRect frame
1>
表示控件的位置和尺寸(以父控件的左上角为坐标原点(
0
,
0
))
2>
修改这个属性,可以调整控件的位置和尺寸
7.CGPoint center
1>
表示控件的中点(以父控件的左上角为坐标原点)
2>
修改这个属性,可以调整控件的位置
8.CGRect bounds
1>
表示控件的位置和尺寸(以自己的左上角位坐标原点,位置永远是
(
0
,
0
)
)
2>
修改这个属性,只能调整控件的尺寸
9.CGAffineTransform transform
1>
表示控件的形变状态(旋转角度、缩放比例)
2>
创建
CGAffineTransform
的函数
* CGAffineTransformMakeScale(CGFloat sx, CGFloat sy)
创建一个
x
、
y
方向的缩放比例分别为
sx
、
sy
的形变值
* CGAffineTransformMakeRotation(CGFloat angle)
创建一个旋转角度为
angle
的形变值
* CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat
sy)
在形变值
t
的基础上,再进行缩放,
x
、
y
方向的缩放比例分别为
sx
、
sy
,然
后返回一个新的形变值
* CGAffineTransformRotate(CGAffineTransform t, CGFloat angle)
在形变值
t
的基础上,再进行旋转,旋转角度为
angle
,然后返回一个新的
形变值
10.superview
返回当前视图的父视图。
(只读)
11.window
返回当前视图的窗口。
(窗口)
获取根视图的
superview
和
window
时,需要注意,在
viewdidload
中
是获取不到的,
viewdidload
只是视图加载完成,并没有添加到窗口
中,
因此需要在
viewDidAppear
方法中才能获取到。那时候视图才被
添加到窗口中。
- (
void
)viewDidLoad
{
[
super
viewDidLoad
];
NSLog
(
@"%@"
,
self
.
view
.
superview
); //
没有值
NSLog
(
@"%@"
,
self
.
view
.
window
); //
没有值
}
- (
void
)viewDidAppear:(
BOOL
)animated
{
NSLog
(
@"%@"
,
self
.
view
.
superview
); //
有值
NSLog
(
@"%@"
,
self
.
view
.
window
);
//
有值
}
12.autoresizesSubviews
默认为
YES
,表示当父视图尺寸改变时,子视图也会随着改变。
13.autoresizingMask
默认为
UIViewAutoresizingNone,
不会自动伸缩。
14.contentMode
设置内容模式。
UIViewContentModeScaleToFill
不按照原宽高比例(长和宽不等比
例增长)
以任意比例填充。
这样视图不会有空白,且内容可以全部显
示。
UIViewContentModeAspectToFill
按照原长宽比例填充,
不完全显示
全部内容。这样内容可能溢出,但整个视图不会留有空白。
UIViewContentModeAspectToFit
按照原长宽比例(长和宽等比例
增长)
,完全显示全部内容。这样容易照成左右或者上下留有空白。
15.backgroundColor
默认是
nil
。
//
设置背景颜色为红色
self
.
view
.
backgroundColor
= [
UIColor
redColor
];
16.UIView
常用添加子视图方法
1.
//
加一个视图到一个视图里面
2.
addSubview:
3.
//
将一个视图移到前面
4.
bringSubviewToFront:
5.
//
将一个视图推送到背后
6.
sendSubviewToBack:
7.
//
把视图移除
8.
removeFromSuperview
9.
//
插入视图
并指定索引
10.
insertSubview:atIndex:
11.
//
插入视图在某个视图之上
12.
insertSubview:aboveSubview:
13.
//
插入视图在某个视图之下
14.
insertSubview:belowSubview:
15.
//
交换两个位置索引的视图
16.
exchangeSubviewAtIndex:withSubviewAtIndex: