UI基础--(2)UIWindow、坐标、UIView 、UIlabel

UIWindow

1.iPhone应用程序通常只有一个窗口,表示为一个UIWindow类的实例。应用程序在启动时创建这个窗口,并往窗口中加入一或多个视图并显示出来。

2.UIWindow对象是所有UIView的根,管理和协调应用程序的显示。一般应用程序只有一个UIWindow对象,即使有多个UIWindow对象,也只有一个UIWindow可以接受到用户的触屏事件。

 备注:UIWindow继承自UIView

 

UIView使用

1.UIView初步介绍

ios中一切看得见摸得着的类都是直接或者间接的继承自UIView

2.UIView作用

 

1)视图是UIView类的实例,负责在屏幕上定义一个矩形区域

视图在展示用户界面及响应用户界面交互方面发挥关键作用。

每个视图对象都要负责渲染视图矩形区域中的内容,并响应该区域中发生的操作事件。视图是应用程序与用户交互的重要机制。除了显示内容和处理事件之外,视图还可以用于管理一或多个子视图。

 

2)子视图是指嵌入到另一视图对象边框内部的视图对象,而被嵌入的 视图则被称为父视图或超视图。视图的这种布局方式被称为视图层 次,一个视图可以包含任意数量的子视图,通过为子视图添加子视 图的方式,视图可以实现任意深度的嵌套。子视图总是被显示在其 父视图的上方。每个父视图都负责管理其直接的子视图,根据需要 调整它们的位置和尺寸,以及响应它们没有处理的事件。

 

3.iPhone屏幕是用点来计算坐标的

型号            x          y     

 iPhone4   320     *    480

iPhone4S 320 *    480

iPhone5  320 * 568   

iPhone5S 320 *    568  

iPhone6    375 *    667

iPhone6 Plus 414 *   736

 

普通屏幕 1点=1像素

retina屏幕 1点 = 4像素

6 Plus 1点 = 9像素

 

4.iPhone的坐标系

1) 原点在左上角

2) 往右为x的正方向,往下为y的正方向

 

 

5.UIView常见属性和坐标属性

1)IOS中的坐标系统

2)frame: 该view在父view坐标系统中的位置和大小。 (参照点是,父亲的坐标系统)

3)bounds:该view在自身坐标系中的位置和大小。 (参照点是,自己的坐标系)

4)center:该view的中心点在父view坐标系统中的位置。

(参照点是,父亲的坐标系统)

 frame的修改

UILabel *lab1 = [[UILabel alloc]initWithFrame:CGRectMake(0, 120, 100, 100)];

lab1.backgroundColor = [UIColor grayColor];

[self.window addSubview:lab1];

 

// 改frame 里面的size(核心三步曲)

// 1.先用临时值存起来

CGRect temprect = lab1.frame;

// 2.修改临时属性

temprect.size = CGSizeMake(60, 60);

// 3.再赋值回去

lab1.frame = temprect;

 

6.UIView的层次关系

1)添加子视图:addSubView

2)从父视图移除:removeFromSuperview

 

 7.UIColor颜色创建和常用颜色

 

 ========================

UIlabel

 1.UIFont类常用方法

1)创建一个UIFont对象

  (UIFont *)fontWithName:(NSString *)name size:(CGFloat)size

2)遍历系统字体库

  (NSArray *)familyNames

3)设置加粗

  (UIFont *)boldSystemFontOfSize:(CGFloat) size

 

2.UILabel如何改变字体颜色

1)字体颜色:setTextColor

2)文字阴影颜色:setShadowColor

3)设置文字阴影偏移: setShadowOffset

4)设置高亮:highlighted        

5)设置高亮颜色:highlightedTextColor 

 

3.UILabel文字对齐方式:setTextAlignment

1)NSTextAlignmentLeft -> 左对齐

2) NSTextAlignmentCenter ->居中对齐

3)NSTextAlignmentRight ->右对齐

 

4.UILabel多行显示:numberOfLines     

5.自适应内容,根据内容大小设置UILabel的frame

   课后作业:创建一个程序,模拟QQ聊天时候的效果

 

ps:Xcode6.0使用空工程

把Empty Application.xctemplate 拷贝到/Applications/ Xcode.app/Contents/Developer/Platforms/ iPhoneOS.platform/Developer/Library/Xcode/Templates/ Project Templates/iOS/Application

 

posted @ 2015-03-04 13:05  timo1234  阅读(544)  评论(0编辑  收藏  举报