一.视图

1. iphone手机上的窗口就是UIWindow类的一个实例(1个手机应用只有一个UIWindow)。

2.UIView类用于实现视图。

UIView提供了方法来添加和删除子视图。一个视图可以有多个子视图,这些子视图按照顺序放在父窗口下:

-(void) addSubview:(UIView *)view;//添加子视图

-(void) removeFromSuperview;//从父窗口上删除子视图(自己)

-(void) insertSubview:(UIView *)view atIndex:(int)index;//按照顺序添加子视图

-(void) insertSubview:(UIView *)view belowSubview:(UIView *)view;

-(void) insertSubview:(UIView *)view belowSubview:(UIView *)view;

-(void) insertSubview:(UIView *)view belowSubview:(UIView *)view;

-(void) exchangeSubviewAtIndex:(int) indexwithSubviewAtIndex:(int)otherIndex;

3.视图结构的相关函数

CGPointMake(x,y)                             CGPoint point=CGPointMake(50.0,50.0);

声明位置的信息                                       point.x=50.0;

point.y=50.0;

CGSizeMake(width,height)

声明大小的信息                                       CGSize size=CGSizeMake(200.0,100.0);

size.width=200.0;

size.height=200.0;

CGRectMake(x,y,width,height)               CGRect rect=CGRectMake(50.0,50.0,200.0,200.0)

声明位置和大小信息                                  rect.origin.x=50.0;

rect.size.width=200.0;

4.Frame和Bound

视图的大小和位置用两种方式表示。一种方式是Frame(框架),即以其父视图为起点,得出它自己的信息。另一种方式是Bound(界限),即以它自己为起点,得到其位置。

其实,系统内部存放的是图的中心点位置和大小信息。Frame方式的信息是按照中心点位置计算出来的。当我们创建一个视图的时,我们往往采用Frame方式。当我们旋转一个视图或者处理视图事件时,我们大多采用Bound方式。

曾经被面试官问过这个问题,当时概念很模糊,被面试官嗤笑了,呵呵!Frame和Bound的区别?这下清楚了吧。

IOS开发之UIView的基本使用的更多相关文章

  1. ios开发之UIView和UIViewController

    UIView 表示屏幕上的一块矩形区域,负责渲染区域的内容,并且响应该区域内发生的触摸事件.它在 iOS App 中占有绝对重要的地位,因为 iOS 中几乎所有可视化控件都是 UIView 的子类. ...

  2. ios开发之UIView的frame、bounds跟center属性的区别(附图)

    博文暂时想到什么写什么,不顺理成章,不顺章成篇. 先看几个概念 坐标点Poit:向右侧为X轴正方向的值x,原点下侧为Y轴正方向的值y 大小Size:由宽度width和高度height构成,表示一个矩形 ...

  3. IOS开发之UIView总结

    如果想调用某个类的某个方法可以写成这样,这个方法来自NSObject类 performSelector: performSelector:withObject: performSelector:wit ...

  4. iOS开发之UIView的常见属性

    1.所有控件都继承自UIView,UIView的常见属性如下: @property(nonatomic,readonly) UIView *superview;获得自己的父控件对象 @property ...

  5. IOS开发之UIView总结1

    太长了,请看 http://blog.csdn.net/xdrt81y/article/details/9128695 performSelector: performSelector:withObj ...

  6. iOS开发之UIView

    在iPhone里你能看到的.摸到的,都是UIView. 视图坐标系统: UIKit中的坐标都是基于这样的坐标系统:以左上角为坐标的原点,原点向下和向右为坐标轴方向. 坐标值由浮点数来表示,内容的布局和 ...

  7. iOS开发之UISearchBar初探

    iOS开发之UISearchBar初探 UISearchBar也是iOS开发常用控件之一,点进去看看里面的属性barStyle.text.placeholder等等.但是这些属性显然不足矣满足我们的开 ...

  8. iOS开发之loadView、viewDidLoad及viewDidUnload的关系

    iOS开发之loadView.viewDidLoad及viewDidUnload的关系 iOS开发之loadView.viewDidLoad及viewDidUnload的关系    标题中所说的3个方 ...

  9. IOS开发之ZBarReaderView的使用

    IOS开发之ZBarReaderView的使用 HOMEABOUTGUESTBOOKCATEGORIESTAGSLINKSSUBSCRIBE 当开发IOS程序中需要用到二维码识别功能的时候,zbar这 ...

随机推荐

  1. CUDA samples 2.3节 用CUDA示例来创建CUDA项目

    2.3.1. Creating CUDA Projects for Windows 略 2.3.2  Creating CUDA Projects for Linux 默认的samples的安装路径 ...

  2. C 语言统计关键字出现次数

    #include <stdio.h> #include <ctype.h> #include <string.h> #define NKEYS (sizeof ke ...

  3. POJ3264——Balanced Lineup(线段树)

    本文出自:http://blog.csdn.net/svitter 题意:在1~200,000个数中.取一段区间.然后在区间中找出最大的数和最小的数字.求这两个数字的差. 分析:按区间取值,非常明显使 ...

  4. Swift主题色顶级解决方案一

    一.常规主题色使用点 应用在发布前都会对其主题色进行设置,以统一应用的风格(可能有多套主题).在主题色设置上有几个方面,如下: 1.TabBar部分,设置图片高亮.文本高度颜色 2.Navigatio ...

  5. [NOIP 2005]-- 篝火晚会

    额~~,对这组题感兴趣的具体的解题报告可以戳戳这里:http://wenku.baidu.com/view/878beb64783e0912a2162aa7.html?qq-pf-to=pcqq.c2 ...

  6. BZOJ 1787: [Ahoi2008]Meet 紧急集合( 树链剖分 )

    这道题用 LCA 就可以水过去 , 但是我太弱了 QAQ 倍增写LCA总是写残...于是就写了树链剖分... 其实也不难写 , 线段树也不用用到 , 自己YY一下然后搞一搞就过了...速度还挺快的好像 ...

  7. Android存储之SQLiteDatbase

    SQLiteDatabase的方式会生成一个数据库文件,每个应用最多只对应一个数据库文件,即.db文件. 可以使用很多第三方工具进行打开,查看数据库里的内容. 昨晚试了好几种工具,如navicat,s ...

  8. Android,机器狗应用

    源码如下: package com.wyl.jqr; import java.io.BufferedReader; import java.io.IOException; import java.io ...

  9. Memcache 查看列出所有key方法

    参考博文: Memcache 查看列出所有key方法 1. cmd上登录memcache telnet 127.0.0.1 11211  2. 列出所有keys stats items // 这条是命 ...

  10. django ImageField用法

    settings里的设置 PROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname('__file__'))) MEDIA_ROOT = ...