您的位置:首页 > 产品设计 > UI/UE

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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: