码迷,mamicode.com
首页 > 其他好文 > 详细

UI-Day01--讲师笔记(三)

时间:2015-08-31 23:10:52      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

 

 视图编程入门

 

 

一、学习目标:

 

1. 掌握UI视图编程框架

 

2. 掌握应用程序的生命周期

 

3. 掌握视图基类UIView的基本使用

 

4.掌握UIWindow的作用

 

5. 掌握iOS开发中坐标位置关系

 

6. 掌握基础控件UILabel基本用法

 

二、主要内容:

 

1.认识UI

 

【问】什么是UI?

【答】UI全称User Interface(用户接口) 通过UI我们和程序进行交互,传入我们的请求,反馈运行的结果。

如果仅限于iOS程序,看得见,摸得着的部分都是UI。

类比Mac

UI:鼠标,键盘,显示器,触摸板。

 

在UI阶段的学习应当注意两点

1.在UI的程序中体会,继承,封装,多态的应用

2.要本着自定制的原则学习每个视图

 

 2.创建一个iOS程序

 

【Application】应用程序,简称应用,英文简称APP。我们编写的iOS程序,必须发布在AppStore上。

【注】iOS工程名不推荐(理论上支持的)中文名称,如果是中文名称,可能发生:图片导入失败,第三方库导入失败,连接不上模拟器。

Product Name: 工程名

Organization Name: 发布者名称

Organization Identifier: 公司ID(按公司要求填写)

Bundle Identifier: 唯一标识,程序打包后的名字

Class Prefix: 类名前缀

Devices: 设备

 

3.Xcode界面介绍

 

【工具栏】

【导航区域】位于Xcode主界面左侧侧边栏

项目导航/文件导航        Command + 1

符号导航                    Command + 2

搜索导航                    Command + 3

问题导航/Debug导航    Command + 4

测试导航                    Command + 5

调试导航/线程导航        Command + 6

断点导航                     Command + 7

日志导航                     Command + 8

 

【编辑区域】主体编写部分

 

【通用区域】右边栏

查看区/属性区

库区域

文件库

代码片段库

对象库

媒体库

 

【调试区域】底边栏

 

4.iOS设备坐标系

 

retina屏(3.5寸)

像素 640 X 960           (0,0) (320,480)

iphone4/4s

 

retina屏 (4寸)

像素 640 X 1136         (0, 0) (320, 568)

iphone5/5c/5s

 

retina屏 (4.7寸)

像素 750 X 1134         (0, 0) (375, 667)

iphone6

 

retina屏 (5.5寸)

像素 1242 X 2208       (0, 0) (414, 736)

iphone6p

 

iPad

普通屏

像素 768 X 1024 (0, 0) (768, 1024)

iPad1/2/mini

 

retina屏

像素 1536 X 2048       (0, 0)(768, 1024)

new iPad, iPad4, air  

 

4.APP生命周期

 在main函数中,以后代码尽量写到AppDelegate中,而main函数就不要多写东西了,有利于观看和封装

 1 UIApplicationMain(argc, argv, nil, NSStringFromClass([PSBAppDelegate class]));
 2 
 3         //第三个参数,传入一个类名(Class),这个类必须是UIApplication类的子类,这个函数UIApplicationMain他会创建UIApplication子类的对象,如果传nil,只创建UIApplication类的对象。
 4 
 5         //UIApplication对象不断检测应用程序的当前状态。当操作系统修改了应用程序的当前状态,会发送通知,UIApplication会检测到这个通知。
 6 
 7         
 8 
 9         //第四个参数,传入代理类的名字,通过名字,可以获得Class,可以创建一个代理对象。
10 
11         //AppDelegate是遵从协议的类,会创建出遵从协议的对象,是UIApplication对象的代理.
12 
13         
14 
15         //当UIApplication对象检测到当前程序状态改变,委托Delegate对象调用协议上有的方法,处理问题。

 

 

【APP的生命周期】从主入口开始—> 进入前台—> 然后注销—>   然后进入后台—> 再进入前台

【注】下面的所有方法不是自己写的  是APP自动生成的  我们只是在该调用方法的特殊阶段 来调用方法

 

//这个方法是整个APP的主入口
1
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 2 3 { 4 5 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 6 7 8 9 self.window.backgroundColor = [UIColor whiteColor]; 10 11 12 13 [self.window makeKeyAndVisible]; 14 15 16 17 //NSLog会打印字符串到debug区,而不是iOS屏幕 18 19 NSLog(@"程序被载入完毕"); 20 21 22 23 return YES; 24 25 } 26 27 //将要注销 28 29 - (void)applicationWillResignActive:(UIApplication *)application 30 31 { 32 33 //程序将要进入非活动状态,如切换到后台,或来电打断 34 35 NSLog(@"即将进入非活动状态"); 36 37 } 38 39 //进入后台 40 41 - (void)applicationDidEnterBackground:(UIApplication *)application 42 43 { 44 45 //程序已经进入后台 46 47 //释放掉占用空间大的对象,储存当前状态,记下需要恢复的对象。 48 49 NSLog(@"已经进入后台"); 50 51 } 52 53 //从后台进入前台的过程 54 55 - (void)applicationWillEnterForeground:(UIApplication *)application 56 57 { 58 59 //即将进入台 60 61 //跟上述方法相反,恢复相关对象。 62 63 NSLog(@"即将进入前台"); 64 65 } 66 67 //当前APP 已经能够看到界面了 进入前台 68 69 - (void)applicationDidBecomeActive:(UIApplication *)application 70 71 { 72 73 //恢复活动状态 74 75 NSLog(@"恢复活动状态"); 76 77 } 78 79 //内存紧张 80 81 - (void)applicationDidReceiveMemoryWarning:(UIApplication *)application 82 83 { 84 85 //内存紧张时,程序会崩溃,如果有这个方法,会先委托这个方法,做一次补救,如果补救失败,再崩溃 86 87 //释放那些可以释放的对象。 88 89 NSLog(@"内存紧张"); 90 91 }

 

 

5.UILabel的使用

 

【UILabel】是一个视图类,即UIView的子类,在iOS程序中,看的见,摸得着的,都是UIView的子类。

【UILabel】是标签视图,用于显示文字信息

 

基本使用

1.UILabel创建.frame位置确定CGRect 介绍(iOS坐标体系)

2.文字内容显示

 

常用属性方法

1.字体颜色,背景颜色

2.字体阴影(阴影颜色、偏移量)

3.设置行数

4.对齐方式(左、中、右)

5.字体大小,字体加粗

6.换行形式

7.自适应

 

三、下次课程:

 

—> UI视图交互与事件机制

预习:1. 熟悉UIButton常用方法 2.了解UIImage 3.初步了解UIViewController

 

四、作业:

 

1.※熟悉课堂代码

 

2.※复习OC第一天

 

3.#用UILabel实现99乘法表

  图片是上课抓拍的图,没有剪切,实在不好意思

 

大约做出的效果图就是这样:技术分享

4.#用UILabel实现国际象棋棋盘

 象棋效果图:技术分享

 

五、每日英语

 

Launching    推出  发动

 Options         选项 ,选择

label              标签

Resign           放弃

Active             活跃的

Foreground      前景

view                   视图

Organization   组织

Identifier       标识符

retina        视网膜

Rect       CocoaLigature0 矩形

Visible       可见

Alignment        对齐

font       字体

shadow            阴影CocoaLigature1 

repeats             重复

 

UI-Day01--讲师笔记(三)

标签:

原文地址:http://www.cnblogs.com/IOS-BUDO/p/4774351.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!