UIView

准备工作

1.删除main

2.ARC -> MRC

3.删除文件(ViewController.h/.m)

4.storng -> retian(APPDlelgate.h)

5.重写dealloc(APPDelegate.m)


//  AppDelegate.m

//  UI01_UIView

//

//  Created by dllo on 16/1/20.

//  Copyright © 2016年dllo. All rights reserved.

//

#import"AppDelegate.h"

@interfaceAppDelegate ()

@end

@implementationAppDelegate

/********重写dealloc******/

-(void)dealloc{

[_window release];

[super dealloc];

}

是一个类UIWindow

创建window和当前屏幕一样大[UIScreen mainSrceen].buond];

self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];

设置window颜色

self.window.backgroundColor= [ UIClolor whiteColor];

设置window可见

self.window makeKeyAndVisible];

xcode7崩溃解决

self.window.rootViewController = [[UIViewController alloc] init];

内存管理

—window release];

UIview(视图基类)

视图就是屏幕上的一块矩形区域

1.创建视图 设置Frame

UIView *firstView = [[UIView alloc]initWithFrame :CGRTectMake(0, 0 ,100,100)100款 100 高

2.设置属性

firstView.backbroundColor = 【UIColor redColor];

添加到父视图(window)显示

[self.window addSubview:firstView];

内存管理

fristView release];

中心显示

数值设置(绝对坐标)

firstView.center = CGPointMake(375/2,667/2);

通过其他控件的位置设置(相对坐标)

firstView.center = self.window.center;

改变frame

firstView.frame = CGRectMake(200,100,100,200);

View的属性

显示或隐藏(如果父视图隐藏了,那么子视图也同时隐藏)

firstView.hidden = NO;

透明度(0 - 1的浮点数)

firstView.alpha = NO;

子视图会根据父视图的透明度的改变同时发生改变

子视图自身的hidden和alpha 值影响自己

父视图的hidden和alpha影响自身和所有子视图

tag值(从1000 开始)

firstView.tag =1000;

通过标记寻找视图(通过Tag值间接改变firstView的颜色)

UIView  *tempView = [self.window viewWithTag:1000];

tempView..backgroundColor = [UIColor PurpleColor];

父有图(一个视图只有一个父视图)

子视图(一个子视图可以有若干个子视图)

视图从父视图移除(就彻底没了)

把子视图送到最后

self.window sendSubviewToBack:firstView];

定时器NSTimer

每隔一段时间让xx做某事

参数1.时间间隔

参数2.某事

参数3.某事

[NSTimer scheduledTimerWithTimerInterval:1 target:self @selector(suibain) userInfo:nil tepeats :YES];

UILable

创建 frame

UILabie *lable = [[UILable alloc】 initWithFrame:CGRectMake(100,100,200,100)];

属性设置

lable.backgroundColor = [UIColor yellowColor];

添加父视图

[self.window addSubview:lable];

内存管理

[lable release];

/********lable文字相关属性**********/

显示汉字(默认左对齐、居中对齐、文本黑色,行数为1 ,背景为透明色)

lable.textColor = [UIColor redColor];

文本对齐方式

lable.textAlignment = NSTextAlignmentCenter;

文本行数

默认为1 为0时行数不限

lable.numerOfLine = 0;

lable自适应(有缺陷)放在文本之后

如果文本不足一行 宽高一起改变

如果 文本超一行 值改变高

一定要写在设置text之后,如果写在之前lable的size会置为0;

字体font

lable.font = UIFont systemFontOfSize:20];

阴影shadow

lable.shadowColor = [UIColor bllueColor];

阴影偏移量

lable.shadowOffset = CGSizeMake(1,5);

UITextField 输入框

UITextField *tf = [UITextField alloc]initWithFrame:CGRectMake(100,100,100,100)];

tf.backgroundColor = [UIColor cyanColor];

[self.window addSubview:tf];

[tf release];

文本控制******/

占位字符串placeholder(提示信息)

tf.placeholder = YES;

输入控制

tf.enable = YES;

安全文本类型

tf.secureTextEntry  = YES;

键盘样式

tf.keyboardType = UIKeyboardDefault;

tf.

外观控制

输入框样式

tf.boardStyle = UITextboardStyleNone;

加边框宽度

tf.layer.boardWidth = 1;

边框颜色

tf,layer.boardColor = 【UIColor lightGrayColor].CGColor;

切圆角(圆形;是正方形边长的一半)

tf.layer.cornerRAdius = tf.frame.size.width / 2;

清除按钮

tf.clearButtonMode = UITextFieldModeAlways;

UIButton  按钮

UIButton *btn = [UIButton buttonWithTypeSystem];

btn.frame = CGRectMake(100,100,100,,100);

btn.backgroundColor = [UIColor redColor];

绑定按钮点击事件(按钮点击时 能够触发一个方法)

参数1:目标(调用方法的人)

参数2:动作(调用的方法)

参数3:事件(方法的触动方法)

btn addTarget:self action:@selector(click:)forControllorEvents:UIControlEventTouchUpInside】;

self.window addSubview:btn];

按钮文字

参数1:标题内容

参数2:状态

[btn setTitle:@"正常" forState:UIControlStateNormal];

[btn setTitle:@"常量" forState:UIControlStateHightlighted];

按钮显示触摸时高亮

[btn.showsTouchWhenHightlighted = YES;

添加事件的方法(注意书写位置)

键盘回收

第一步:签订系统协议

第二步:设定代理人

第三步:协议方法


/***************只有最后一个键盘回收*****************/

每个输入框都要设置tag值

if(textField.tag==1000) {

第一个输入框失去第一响应者(失焦:失去焦点)

[textFieldresignFirstResponder];

获取第二个输入框

[[self.windowviewWithTag:2000]becomeFirstResponder];

}

if(textField.tag==2000) {

[textFieldresignFirstResponder];

}

returnYES;

}

将要开始输入时让屏幕上移露出输入框

-(BOOL)textFieldShouldBeginEditing:(UITextField*)textField{

if(textField.tag==2000) {

[UIViewanimateWithDuration:0.53animations:^{

self.window.center=CGPointMake(self.window.center.x,self.window.center.y-258);

}];

}

returnYES;

}

将要结束时让屏幕下移

-(BOOL)textFieldShouldEndEditing:(UITextField*)textField{

if(textField.tag==2000) {

[UIViewanimateWithDuration:0.53animations:^{

self.window.center=CGPointMake(self.window.center.x,self.window.center.y+258);

}];

}

returnYES;

}

你可能感兴趣的:(UIView)