#import "AppDelegate.h"
#import "ViewController.h"
@interface AppDelegate ()
@end
@implementationAppDelegate
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
//ios 苹果移动设备的操作系统
//UIKit-> 包含了所有可以看得见得视图控件
//UIWindow
// UIView
//UIWindow:窗口 -> 在iOS应用程序中 只能有一个主窗口
// *** 有并且只能有一个主窗口
// UIWindow 是用来显示承载 可以看到的控件的 容器
// UIWindow是容器的原因 ->所有控都是一层层 添加到窗口上的
// UIWindow的初始化:
// initWithFrame构造方法->在创建一个对象的时候 同时给他一个Frame
//获取屏幕边境范围:[UIScreen mainScreen].bounds
// UIView: 是一个视图 -> 是所有视图的父类
// UIWindow 也是一个视图
//UIWindow*window
self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
ViewController *vc = [[ViewController alloc]init];
self.window.rootViewController =vc;
// makeKeyAndVisible 让窗口 只有一个主窗口 并且显示在屏幕上
[self.window makeKeyAndVisible];
/*
// 1、视图的创建
UIView *view = [[UIView alloc]init];
// ****添加到父视图-> 如果没有这个方法 创建的视图将不会被显示在屏幕上
// [父视图 addSubview:要添加的视图]
[self.window addSubview:view];
// 视图的位置 和 自身大小
// frame - 位置
// 屏幕上是有很多像素点组成的
// 视图的起始位置:origin
// 窗口的起始位置:是左上角(0,0)
// 所有子视图都是根据origin(原点 起始点) 来定义起始位置的
// size:尺寸 试图本身的大小
// frame:是一个视图的属性
// CGRect frame;
// frame.origin
// frame.size
view.frame =CGRectMake(0, 0, 200, 200);
// 背景颜色
// UIColor -> 颜色类 -> 创建的对象是一种颜色
view.backgroundColor =[UIColor blueColor];
UIView *view1 = [[UIView alloc]init];
[self.window addSubview:view1];
view1.frame =CGRectMake(200, 500, 200, 200);
view1.backgroundColor = [UIColor redColor];
// 设置 视图透明度
// 0.0 (完全透明《所有属性方法 类似被禁用》)-1.0(不透明)
view.alpha = 0.3;
view1.alpha = 0.1;
// hidden:隐藏 默认值是0;
// view.hidden = YES;
NSLog(@"%d",view.isHidden);
// 图层之间的关系
// 视图 是一层层叠加到一个 父视图上
// 父视图 子视图
// 子视图 是父视图里面的一个元素
// 父视图的位置 发生改变 子视图也会跟随 父视图位置发生改变
self.window.backgroundColor =[UIColor greenColor];
UIView *view = [[UIView alloc]initWithFrame:CGRectMake(100, 100, 200,200)];
view.backgroundColor = [UIColor grayColor];
[self.window addSubview:view];
UIView *view1 = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 100,100)];
view1.backgroundColor = [UIColor cyanColor];
[view addSubview:view1];
// frame: 是根据他的父视图 来定义 这个视图自身位置的(原点)
// 定义frame 不要超出 父类的范围 超出部分将不会被 显示在屏幕上
// 超出部分 将不会接收任何响应事件
// center 中心点 对角线的交点
// center.x = 宽/2+原点的x;
// center.y = 宽/2+原点的y;
NSLog(@"%f",view.center.x);
// 改变中心点 可以改变视图的位置
view.center = CGPointMake(150,200);
// 只能使用 frame 在创建视图的时候 给他一个位置
// 相对与自身的位置 原点永远都是(0,0);
// bounds 自身的边境范围
// view.bounds
// bounds用途 是获得视图的宽高 忽略原点
NSLog(@"%f",view.bounds.size.height);
// 定时器 隔多少秒去做某件事
// NSTimer 定时器的类
// 定时器初始化的方法
// Interval:间隔 (时间间隔)单位是秒
// target:让谁执行
// selector:方法选择器 -> 用来选择一个方法去执行
// userInfo:
// repeats:重复次数
// 隔1秒 去执行start 重复执行
[NSTimer scheduledTimerWithTimeInterval:1 target:selfselector:@selector(start) userInfo:nil repeats:YES];*/
UIView *view1 = [[UIViewalloc]initWithFrame:CGRectMake(200,200, 200,500)];
view1.backgroundColor = [UIColorgreenColor];
[self.window addSubview:view1];
UIView *view2 = [[UIViewalloc]initWithFrame:CGRectMake(100,300, 300,300)];
view2.backgroundColor = [UIColorredColor];
[self.window addSubview:view2];
// 在同一个父类中
//1、view1 移动到最上面
// [self.window bringSubviewToFront:view1];
//把一个视图 移动到底下
//把view2移动到最底下
// [self.window sendSubviewToBack:view2];
// 交换两个视图的位置
//-(void)exchangeSubviewAtIndex:
//subview(所有子视图组成的数组)数组->
// self.window.subviews;
// NSLog(@"%@",self.window.subviews);
//初始化视图的顺序 就是把试图存放到subviews这个数组里面的顺序
//改变视图的位置 就是在改变subviews 数组里面的元素的位置
// UIView *view = self.window.subviews[0];
// NSLog(@"%@",view);
// [self.window exchangeSubviewAtIndex:2 withSubviewAtIndex:1];
//
//插入一个视图 在一个视图的上面
UIView *inserView = [[UIViewalloc]initWithFrame:CGRectMake(30, 50, 200, 300)];
inserView.backgroundColor = [UIColor blueColor];
[self.window addSubview:inserView];
// [self.window insertSubview:inserView aboveSubview:view1];
//插入inserView 到第三个位置
// [self.window insertSubview:inserView atIndex:3];
// NSLog(@"%@", self.window.subviews);
//插入到 某个视图的底部
// [self.window insertSubview:inserView belowSubview:view1];
// tag 标记 标签 标号 -> 同一个父视图里面的身份证号
inserView.tag = 100;
//可以通过tag 值 在他的父视图上 可以找到这个视图
//viewWithTag: 在一个父视图上面 查找有没有 tag值是多少的 视图
UIView *v = [self.window viewWithTag:100];
// v 就是inserView
v.backgroundColor = [UIColor purpleColor];
//移除视图
[v removeFromSuperview ];
return YES;
}