UIView
2015-12-19 18:53
531 查看
首先创建一个window
之后创建一个view
UIView的属性
父视图通过一个数组subview来管理它所有的子视图,容器会改变对象的引用对数,计数+1,所以对象添加到父视图上之后就可以相应的release(前提是用alloc创建了对象)
把view放在window上,我们把view这种加到其他视图上的视图称为子视图,而被加上的视图称为父视图,window就是父视图
子视图的坐标起点和父视图的左上角有关,它就是相对父视图而来的
如果移动了父视图,子视图和父视图一起移动,任何视图都可以称为父视图,一个视图只能有一个父视图.但是可以有多个子视图
!!!!调整层级关系
把视图放在前面 bringSubviewToFront
从父视图上把视图移除
//创建一个Window,window是一个属性 // 以UI开头,自己的类里面操作自己的属性用self // 创建一个window,创建的过程跟之前一样,用alloc进行创建,并且需要给window一个尺寸 // 尺寸和屏幕一样大 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // 给window设置一个背景颜色 //getter方法 setter方法 self.window.backgroundColor = [UIColor whiteColor]; // 把window设置成可见 [self.window makeKeyAndVisible]; // 对window进行释放 [_window release];
之后创建一个view
// UIView // 1.通过自定义初始化方法创建一个UIView对象 UIView *view1 = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)]; // 2.设置背景颜色 view1.backgroundColor = [UIColor cyanColor]; // 3.把view放到window上 [self.window addSubview:view1]; // 4.内存管理 [view1 release];
UIView的属性
// 属性 // 透明度,范围是0-1,默认是1,0是全透明效果 // view1.alpha = 0.5; // 设置视图是否进行隐藏,是BOOL类型,默认是NO // view1.hidden = NO; // view1.tag = 1000; // // 根据tag找对应的视图 // 默认是0,一般为了防止重复,tag会设置1000以上, // UIView *temp = [self.window viewWithTag:1000]; // NSLog(@"%@", temp);addSubview用数组保存子视图,所以使用add方法后,可以直接release
父视图通过一个数组subview来管理它所有的子视图,容器会改变对象的引用对数,计数+1,所以对象添加到父视图上之后就可以相应的release(前提是用alloc创建了对象)
把view放在window上,我们把view这种加到其他视图上的视图称为子视图,而被加上的视图称为父视图,window就是父视图
子视图的坐标起点和父视图的左上角有关,它就是相对父视图而来的
如果移动了父视图,子视图和父视图一起移动,任何视图都可以称为父视图,一个视图只能有一个父视图.但是可以有多个子视图
!!!!调整层级关系
把视图放在前面 bringSubviewToFront
[self.window bringSubviewToFront:view2];把视图放在后面 sendSubviewToBack
[self.window sendSubviewToBack:view2];
从父视图上把视图移除
[view1 removeFromSuperview];
相关文章推荐
- RabbitMQ的work queue(2)
- Android-Bluetooth Low Energy
- 【APUE】6、孤儿进程组
- Leetcode: Longest Increasing Subsequence
- Gradle Buildscript
- APUE中fcntl.h的使用及O_SYNC在Mac与Ubuntu下的测试
- (一)cdh5.3.6下hue3.7.0的安装部署
- UILabel 行间距
- 《每天3分钟学开发》ios开发之UI基础:UI 第三天!
- 借助mosquitto“实时”远程监控服务器数据库运行状态
- 《每天3分钟学开发》ios开发之UI基础:UI 第二天!
- 《每天3分钟学开发》ios开发之UI基础:UI 第一天!
- Android-Bluetooth
- 232. Implement Queue using Stacks,225. Implement Stack using Queues
- Hibernate之Query.uniqueResult()结果为数值的注意事项
- 代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧
- ios控件-UILabel
- AutoLayout处理UITableView动态高度
- Arduino - IIC SCANNER
- 【iOS学习笔记 15-12-19】自定义cell侧滑按钮(UIButton)