UIKit框架(2)框架简介-创新互联

  • UIKit框架

    为扎赉诺尔等地区用户提供了全套网页设计制作服务,及扎赉诺尔网站建设行业解决方案。主营业务为成都网站建设、做网站、扎赉诺尔网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

什么是框架?

   简单来说,就是其他攻城狮开发完成的代码,包括库文件、头文件等,这些文件中的API我们可以拿过来使用

UIKit框架是干什么的?

   提供创建基于触摸用户界面的类

   包括:屏幕上的绘制机制、捕捉事件、管理组织复杂的UI元素

UIKit中最重要的两个类?

1)UIView:所有可以看到的组件/控件/视图的父类

        如:UIButton按钮、UILabel标签、UITextField输入框、UIImageView图片视图等

2)UIViewController:所有控制器的父类,负责管理一个页面

      如:UIViewController基本页面、UITableViewController表格视图页面等

     这两个父类都继承自UIResponder,称作响应者(以后介绍)

   UIResponder继承自NSObject

  • 控制器的基本使用

在MVC设计模式中,控制器负责视图与模型数据的关联,完成页面的逻辑功能

UIViewController中包含一个非常重要的属性:页面中的视图

@property(nonatomic, retain) UIView *view

代码创建控制器:

UIViewController * vc = [[UIViewController alloc] init];

   控制器对象vc,即一个App中的页面,包含一个白色的空白view

设置App的初始页面(空模板下):

   在AppDelegate文件中找到以下方法

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

在注释位置添加代码:

     创建控制器对象,并设置其view的背景颜色

   设置window对象的根控制器(初始页面)为新建的控制器

   UIKit框架(2)框架简介

详细解释以下 空项目启动 的代码过程:

    1)创建一个UIWindow对象,其大小为当前屏幕的大小

    2)创建一个控制器

    3)设置window对象的根控制器(初始页面)

    4)设置window对象为key window 并显示

什么是key window?

   即主窗口,同一时刻只有一个窗口是主窗口

   主窗口能够接收各种事件,如触摸事件、运动事件、键盘事件等。

   UIWindow的父类是UIView

  • 控制器子类

对于UIKit中的使用,一是拿过来直接使用,二是实现子类

     实现子类的好处是:将操作封装(高内聚低耦合)

控制器子类:

   如UIViewController子类AMViewController

控制器中的几个应重写方法:

   init方法:控制器对象被创建后初始化时的调用

      该方法中应当先调用父类方法

      通常在该方法中添加与视图无关的操作

   viewDidLoad方法:控制器对象管理的view被加载时调用

      该方法中应当先调用父类方法

      通常在该方法中添加与视图相关的操作

- (void) viewDidLoad {
    [super ViewDidLoad];
    // Do any additional setup after loading the view.
}

  • UIView的基本属性

//背景颜色
@property(nonatomic, copy) UIColor *backgroundColor
//透明度
@property(nonatomic) CGFloat alpha
//视图对象的ID
@property(nonatomic) NSInteger tag
//是否隐藏
@property(nonatomic, getter=isHidden) BOOL hidden
//所在window
@property(nonatomic, readonly) UIWindow *window

  • UIView的子视图

UIView是容器对象:

     每一个UIView都是一个容器,能容纳其他UIView。

     容纳其他UIView的UIView我们称之为父控件,被容纳的UIView我们称之为子控件。

     子控件的存在依赖于父控件的存在,子控件的位置等属性是以父控件作为基准的。

   相关属性:

@property(nonatomic, readonly) UIView *superview
@property(nonatomic, readonly, copy) NSArray *subviews

添加子视图:

   subview在显示到屏幕上时,是位于superview上层的 ,添加的方法:

 - (void)addSubview:(UIView *)view

     同一个view的subview是按照加入的顺序显示对应层的,越晚加入的subview显示在越上层,反之也是如此

     用superview可以直接管理subview的层 。相关方法:

- (void)insertSubview:(UIView *)view atIndex:(NSInteger)index
- (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview
- (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview
- (void)bringSubviewToFront:(UIView *)view
- (void)sendSubviewToBack:(UIView *)view
- (void)removeFromSuperview
- (UIView *)viewWithTag:(NSInteger)tag

子视图的位置及尺寸:

   UIView对象包含以下与位置及尺寸相关的属性:

@property(nonatomic) CGRect frame    // frame属性(以父视图为坐标原点)
@property(nonatomic) CGRect bounds   // bounds属性(以自身为坐标原点)
@property(nonatomic) CGPoint center  // center属性(以俯视图为坐标原点)
@property(nonatomic) CGAffineTransform transform  // 形变属性

   视图的坐标系:

   UIKit框架(2)框架简介

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

本文题目:UIKit框架(2)框架简介-创新互联
标题URL:https://www.cdcxhl.com/article16/pjjgg.html

成都网站建设公司_创新互联,为您提供企业建站网站收录网站设计公司网页设计公司关键词优化移动网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设