青岛滨海学院计算机教研室崔守良课件.ppt

上传人:sccc 文档编号:5466679 上传时间:2023-07-10 格式:PPT 页数:16 大小:2.20MB
返回 下载 相关 举报
青岛滨海学院计算机教研室崔守良课件.ppt_第1页
第1页 / 共16页
青岛滨海学院计算机教研室崔守良课件.ppt_第2页
第2页 / 共16页
青岛滨海学院计算机教研室崔守良课件.ppt_第3页
第3页 / 共16页
青岛滨海学院计算机教研室崔守良课件.ppt_第4页
第4页 / 共16页
青岛滨海学院计算机教研室崔守良课件.ppt_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《青岛滨海学院计算机教研室崔守良课件.ppt》由会员分享,可在线阅读,更多相关《青岛滨海学院计算机教研室崔守良课件.ppt(16页珍藏版)》请在三一办公上搜索。

1、青岛滨海学院计算机教研室崔守良,模型-视图-控制器应用程序设计,了解MVC设计模式,MVC定义了应用程序的三个部分:模型提供底层数据和方法,它向应用程序的其他部分提供信息。用户界面由一个或多个视图组成,而视图由不同的屏幕控件(按钮、文本框等)组成,用户可与之交互。控制器通常与视图配对,负责接受用户输入并做出相应的反应。控制器可访问视图并使用模型提供的信息更新它,还可使用用户在视图中的交互结果来更新模型,Xcode中的MVC,1、视图通常使用Interface Builder以可视化的方式设计它们。视图是完全 独立于逻辑结构的,要让视图中的对象能够与应用程序逻辑交互,必须定义相应的连接。连接到的

2、东西有两种:输出口和操作。输出口定义了代码和视图之间的一条路径,可用于读写特定类型的信息;而操作定义了应用程序中的一个方法,可通过视图的事件触发。,2、视图控制器负责处理与视图的交互,并为输出口和操作建立连接。需要在项目代码中使用两个特殊的编译指令:IBOutlet和IBAction。IBOutlet用于让代码能够与视图中的对象交互,如一条属性的声明如下:property(strong,nonatomic)IBOutlet UILabel*myLabel;属性的声明加上IBOutlet关键字后便可以在IB中以可视化方式将视图中的标签对象连接到属性myLabel,在代码中使用该属性与标签交互。,

3、IBAction用于指出在特定的事件发生时应调用代码中相应的方法。如用户按下了按钮或更新了文本框,你可能想应用程序采取措施并做出合适的反应。编写实现事件驱动逻辑的方法时,可在头文件中使用IBAction声明它,这将向IB编辑器暴露该方法。例如,方法doCalculation的原型可能类似于这样:-(IBAction)doCalculation:(id)sender;3、数据模型对于小型应用程序,很少需要实现数据模型,而是将其逻辑加入到控制器中。大量数据应用程序可以使用Core Data,其抽象了应用程序与底层数据存储之间的交互。,了解Interface Builder,Interface Bu

4、ilder是Xcode集成的杰出用户界面编辑器,让你以可视化方式设计应用程序界面。IB不自动生成界面代码,也不将源代码直接关联到界面元素,而是生成实时的对象,并通过称为连接的简单关联将其连接到应用程序代码。当你需要修改应用程序功能的触发方式时,只需要修改连接即可。,Interface Builder故事板,在IB中所做的工作将变成一个XML文件,它被称为故事板(storyboard),包含应用程序要显示的每个屏幕的对象层次结构。这些对象可能是界面元素-按钮、开关等,也可能是你需要在应用程序中使用的其他非界面元素。组成特定屏幕的一系列对象称为场景(scene)。故事板可根据需要包含任意数量的场景

5、,产通过切换(segue)将场景关联起来。,使用模板Single View Application,操作步骤:,1、创建项目。新建一个iOS应用程序,选择Single View Application模板,输入项目名:HelloNoun。选中Use Storyboard和Use Automatic Reference Counting。项目包含5个文件:AppDelegate.h和AppDelegate.m组成了该项目将创建的UIApplication实例的委托,可对这些文件进行编辑,以添加控制应用程序运行时如何工作的方法。,ViewController.h和ViewController.m实

6、现了一个视图控制器(UIViewController),这个类包含控制视图的逻辑。MainStoryboard.storyboard故事板文件,用于存储界面设计,单击故事板会在IB中打开。应用程序加载故事板文件时,其中的对象将被实例化,成为应用程序的一部分。,2、规划变量和连接成功的项目始于成功的规划和设置。你应该做如下工作:确定所需的实例变量。哪些值和对象需要在类的整个生命周期内都存在。确定所需的输出口和操作。哪些实例变量需要连接到界面中定义的对象?界面将触发哪些方法?创建相应的属性。对于每个打算操作的实例变量,都应使用property来定义实例变量和属性,并为该属性合成设置函数和获取函数。

7、清理。对于在生命周期内不再需要的实例变量,使用其对于的属性将其值设置为nil。,3、设计界面 在项目导航器中选择MainStoryboard.storyboard,打开它,在IB中打开对象库,将相应的对象拖放到视图中。4、创建并连接输出口和操作添加输出口:按住Control键,并拖曳用于输出的标签,将其拖曳到包含文件ViewController.h的代码编辑器中,当鼠标位于interface行下方时松开。可以使用助手编辑器,这样可以同时看到视图和ViewController.h文件,松开鼠标时,将被要求定义输出口,从Connection下拉列表中选择Outlet,从Storage下拉列表中选择

8、Strong,从Type下拉列表中选择UILabel,指定属性名userOutput,再单击Connect按钮,Xcode将自动插入合适的编译指令property和关键字IBOutput、编译指令synthesize以及清理代码。更重要的是在输出口和界面对象之间建立连接。,添加操作 按住Control键,将视图中的按钮拖曳到接口文件ViewControl.h中,松开鼠标配置连接,务必将连接类型设置为Action,从Event下拉列表中选择Touch Up Inside,指定触发该操作的事件,4、实现应用程序逻辑 打开ViewController.m文件,转到setOutput方法的实现上。该方

9、法将输出标签的内容设置为用户在文本框中输入的内容。-(IBAction)setOutput:(id)sender selt.userOutput.text=selft.UserInput.text;5、生成应用程序,练习:,1、请在Interface Builder中探索常用界面对象的属性,尝试设置不同的字体、颜色和布局。2、重新创建项目HelloNoun,以手工方式定义输出口、操作、实例变量属性,在故事板中,按住Control键,从场景的View Controller图标拖曳到视图中相应的图标,建立输出口;打开Connection Inspector,选择Touch Up Inside事件,拖曳到ViewController创建到操作的连接,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号