UI_UIView
2015-07-30 08:30
429 查看
#import "AppDelegate.h"
// 宏
#define WIDTH self.window.frame.size.width
#define HEIGHT self.window.frame.size.height
@interface AppDelegate ()
// 延展可以把属性写在这里
@property(nonatomic,
retain)UIView *myView;
@end
@implementation AppDelegate
- (void)dealloc
{
[_myView release];
[_window release];
[super dealloc];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
///
创建一个和屏幕一样大的window
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
//
给window一个背景颜色
self.window.backgroundColor = [UIColor whiteColor];
//
让当前的window在应用程序中可见并显示出来
[self.window makeKeyAndVisible];
//
对window进行释放
[_window release];
/// UIView
// 1.创建一个UIView对象
UIView *view1 = [[UIView alloc] initWithFrame:CGRectMake(100,
100, 100,
100)];
// 2.view1设置背景颜色
view1.backgroundColor = [UIColor lightGrayColor];
// 3.把视图贴到窗口上
[self.window addSubview:view1];
// 4.释放
[view1 release];
//
视图添加到父视图的数组之后,数组会增加视图的引用计数,相应的也就可以在添加之后对视图进行释放
//
用便利构造器创建的alloc不用释放,看见addSubview的时候一般也都可以进行释放
UIView *view2 = [[UIView alloc] initWithFrame:CGRectMake(140,
140, 100,
100)];
view2.backgroundColor = [UIColor yellowColor];
[self.window addSubview:view2];
[view2 release];
UIView *view3 = [[UIView alloc] initWithFrame:CGRectMake(180,
180, 100,
100)];
view3.backgroundColor = [UIColor orangeColor];
[self.window addSubview:view3];
[view3 release];
//
视图的坐标起始位置在父视图的左上角(原点)
//
极限是分辨率除以2
// NSLog(@"%g", WIDTH);
// NSLog(@"%g", self.window.frame.size.height);
// NSLog(@"%g", HEIGHT); //
到frame是getter方法,getter之后都是访问结构体
// frame是其对应的尺寸
//
一个视图可以有多个子视图,但是一个视图只能有一个父视图
//
父视图
NSLog(@"%@", view2.superview);
//
子视图
NSLog(@"%@",
self.window.subviews);
//
先创建,先添加到subview的视图会在层级关系的最下面
//
通过父视图来管理他身上所有子视图的层级关系
//
父视图把指定的视图放在最上面
[self.window bringSubviewToFront:view2];
//
父视图把指定的视图放在最下面
[self.window sendSubviewToBack:view3];
//
用视图的frame属性,对视图位置大小进行重新设置
view1.frame = CGRectMake(200,
100, 100,
150);
self.myView = [[UIView alloc] initWithFrame:CGRectMake(200,
200, 100,
100)];
self.myView.backgroundColor = [UIColor grayColor];
[self.window addSubview:self.myView];
[_myView release];
// myView是属性
//
透明度
// view3.alpha = 0.5;
// view2.alpha = 0.5;
// view1.alpha = 0.5;
// tag值不能为0,不能重复.通过tag寻找子视图
view1.tag =
1000;
UIView *tempView = [self.window viewWithTag:1000];
NSLog(@"%@", tempView);
return
YES;
}
// 宏
#define WIDTH self.window.frame.size.width
#define HEIGHT self.window.frame.size.height
@interface AppDelegate ()
// 延展可以把属性写在这里
@property(nonatomic,
retain)UIView *myView;
@end
@implementation AppDelegate
- (void)dealloc
{
[_myView release];
[_window release];
[super dealloc];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
///
创建一个和屏幕一样大的window
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
//
给window一个背景颜色
self.window.backgroundColor = [UIColor whiteColor];
//
让当前的window在应用程序中可见并显示出来
[self.window makeKeyAndVisible];
//
对window进行释放
[_window release];
/// UIView
// 1.创建一个UIView对象
UIView *view1 = [[UIView alloc] initWithFrame:CGRectMake(100,
100, 100,
100)];
// 2.view1设置背景颜色
view1.backgroundColor = [UIColor lightGrayColor];
// 3.把视图贴到窗口上
[self.window addSubview:view1];
// 4.释放
[view1 release];
//
视图添加到父视图的数组之后,数组会增加视图的引用计数,相应的也就可以在添加之后对视图进行释放
//
用便利构造器创建的alloc不用释放,看见addSubview的时候一般也都可以进行释放
UIView *view2 = [[UIView alloc] initWithFrame:CGRectMake(140,
140, 100,
100)];
view2.backgroundColor = [UIColor yellowColor];
[self.window addSubview:view2];
[view2 release];
UIView *view3 = [[UIView alloc] initWithFrame:CGRectMake(180,
180, 100,
100)];
view3.backgroundColor = [UIColor orangeColor];
[self.window addSubview:view3];
[view3 release];
//
视图的坐标起始位置在父视图的左上角(原点)
//
极限是分辨率除以2
// NSLog(@"%g", WIDTH);
// NSLog(@"%g", self.window.frame.size.height);
// NSLog(@"%g", HEIGHT); //
到frame是getter方法,getter之后都是访问结构体
// frame是其对应的尺寸
//
一个视图可以有多个子视图,但是一个视图只能有一个父视图
//
父视图
NSLog(@"%@", view2.superview);
//
子视图
NSLog(@"%@",
self.window.subviews);
//
先创建,先添加到subview的视图会在层级关系的最下面
//
通过父视图来管理他身上所有子视图的层级关系
//
父视图把指定的视图放在最上面
[self.window bringSubviewToFront:view2];
//
父视图把指定的视图放在最下面
[self.window sendSubviewToBack:view3];
//
用视图的frame属性,对视图位置大小进行重新设置
view1.frame = CGRectMake(200,
100, 100,
150);
self.myView = [[UIView alloc] initWithFrame:CGRectMake(200,
200, 100,
100)];
self.myView.backgroundColor = [UIColor grayColor];
[self.window addSubview:self.myView];
[_myView release];
// myView是属性
//
透明度
// view3.alpha = 0.5;
// view2.alpha = 0.5;
// view1.alpha = 0.5;
// tag值不能为0,不能重复.通过tag寻找子视图
view1.tag =
1000;
UIView *tempView = [self.window viewWithTag:1000];
NSLog(@"%@", tempView);
return
YES;
}
相关文章推荐
- UIButtom及其常用的小控件
- Unique Paths
- Longest Common Subsequence Problem
- Java GUI图形界面开发工具
- Java GUI图形界面开发工具
- android学习笔记UI-ImageView
- 压缩Gradle构建 (Squeezing your Gradle builds)
- apue 第十二章 线程控制
- Criteria Query—Hibernate之面向对象查询
- Unique Binary Search Tree II ***
- 点评版:函数源代码 strcpy/memcpy/atoi/kmp/quicksort
- UGUI实现摇杆(模仿太极熊猫)
- IOS开发之UISearchBar应用
- apc220使用心得
- Ueditor1.4.3上传图片参照宽度或高度进行压缩(默认最长边)
- 【UI-基础】富文本
- Unique Binary Search Tree
- UI007---KVC
- android菜鸟笔记之UI线程阻塞
- Unable to build the default ValidatorFactory