xcode中文教程_计算机-Python.pdf

上传人:c****1 文档编号:94094638 上传时间:2023-07-23 格式:PDF 页数:50 大小:3.20MB
返回 下载 相关 举报
xcode中文教程_计算机-Python.pdf_第1页
第1页 / 共50页
xcode中文教程_计算机-Python.pdf_第2页
第2页 / 共50页
点击查看更多>>
资源描述

《xcode中文教程_计算机-Python.pdf》由会员分享,可在线阅读,更多相关《xcode中文教程_计算机-Python.pdf(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、.Word 资 料 介绍 本教程向您演示如何创建一个简单的 iPhone 应用程序。本文不打算对 iPhone 目前可用的特性作全面介绍,而是介绍一些技术,让您对基础开发过程有初步了解。如果您刚开始使用 Cocoa Touch 进行 iPhone 开发,则您需要阅读本文档。阅读之前,您需要大致了解计算机编程基础,尤其是要了解 Objective-C。如未曾用过该语言,则至少应通读 学习Objective-C:入门教材。本文档不是为了创建一个优雅漂亮的应用程序,而是为了向您描述:如何使用 Xcode 创建并管理一个工程 基础设计模式和 iPhone 开发的基本技术 Interface Build

2、er 使用入门 如何让应用程序响应来自标准用户接口控件的用户输入 另外,我们还在教程中指出其他一些文档。只有阅读这些文档,您才能充分理解 iPhone 开发的工具和技术。重要:为了学习本教程,您需要安装 iPhone SDK 和开发者工具,它们位于 iPhone 开发中心。文档描述的工具包含在 iPhone SDK v3.0 里面请检查一下Xcode 版本,它不能低于 3.1.3。文档的组织方式 本文档分为如下章节:“教程概述和设计模式”“创建您的工程”“添加一个视图控制器”“查看 Nib 文件”“配置视图”“实现视图控制器”“排除疑难”.Word 资 料“下一步做什么?”下页 教程概述和设计

3、模式 本章概述您将要创建的应用程序以及将会使用的设计模式。教程概述 在学习过程中,您将创建一个很简单的应用程序。它含有一个文本字段,一个标签和一个按键。您可以把名字输入到文本字段中,再按下按键,这时标签的文本就会变成“Hello,!”:您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档

4、描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 尽管这是个很简单的应用程序,但它介绍了 基本的设计模式、工具、以及利用 Cocoa Touch 进行 iPhone 开发的基础技术。Cocoa Touch 包括 UIKit和 Foundation 这两个 框架。当在 iPhne OS上开发事件驱动的图形化应用程序时,您需要使用它们提供的工具和基本结构。同时,Cocoa Touch

5、还包含其他几个 框架,它们提供一些基本的服务,可用于访问设备的特色容,例您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学

6、习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 如访问用户的联系人。如需要进一步了解 Cocoa Touch 及其在哪些方面适应于 iPhone OS,请阅读 iPhone OS 技术概览。另外,我们将在“设计模式”一节中描述您将使用的主要的设计模式。虽然本教程不太顾及用户界面,但应用程序的表现形式是其获得成功的关键。您应该阅读 iPhone 人机接口指南 并且研究基于本文档的样例代码(HelloWorld),这样您才能明白如何改善用户接口,以使其成为一个成熟的应用程序。同时,您也将了解视图控制器如何工作以及它如何同 iPhone 应用程序

7、的的架构相适应。设计模式 请务必阅读 Cocoa 基础指南 的设计模式这一章。您将使用主要的模式如下:委托 模型 视图 控制器 目标-动作 下面对这些模式作简单介绍并且指出应用程序在什么地方会使用它们。委托 委托 模式是一个对象周期性地向被指定为其委托的另一个对象发送 消息,向其请求输入或者通知某件事情正在发生。该模式可替换类继承来对可复用对象的功能进行扩展。在本文将要创建的应用程序中,应用程序对象会向其委托发送消息,通知它主要的启动例程已经完成并且定制的配置可开始执行。为了建立并管理视图,委托会创建一个控制器实例。另外,当用户点击 Return 按键后,文本字段也会通知它的委托(即所创建的控

8、制器对象)。委托方法通常会集中在一起形成一份 协议。一份协议基本上就是一个方法的列表。如果一个类遵循某个协议,则它要保证实现协议所要求的方法(有些方法可选择实现与否)。委托协议您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除

9、疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 规定了一个对象可以发送给委托的所有消息。如果需要进一步了解协议及其在 Objective-C 中的作用,请查看 Objective-C 编程语言 的 协议。模型-视图-控制器 模型-视图-控制器(或者“MVC”)模式将应用程序中的对象设定为三种角色。模型 对象表示数据。例如,在一款游戏中,SpaceShips和Rockets 是模型对象,在一个用于生产的应用中,ToDo 项和Contacts

10、 是模型对象,在一个绘画应用中,Circles或 Squares 是模型对象。本文将创建的应用程序用到的数据非常简单-仅仅是一个字符串-并且该字符串只在一个方法中使用,因此,严格说,我们甚至没有必要在程序中使用模型对象,但是程序所用到的设计原理却非常重要。在其他的应用程序中,模型对象将会更加复杂并且可以在多个地方进行访问。视图 对象知道如何显示数据(模型),并且它们有可能会允许用户对数据进行编辑。在本文将要创建的应用程序中,您需要一个主视图来包含其它几个视图 一个文本字段,它用于捕获用户输入信息;第二个文本字段,它用于显示文本,而文本容则是基于用户的输入;另外还需要一个按键,用户利用它来告知我

11、们第二个文本字段应该被更新。控制器 对象位于模型和视图之间。在本文将要创建的应用程序中,控制器对象将会从输入文本字段中取得数据,并把数据存放在一个字符串中,然后再把第二个文本字段的容更新成恰当的值,更新操作则由按键发送出来的动作触发。目标-动作 目标-动作机制允许一个控件对象(诸如按键或滑动条)向另外一个对象发送一条消息(即动作),以之作为对某个用户事件您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中

12、指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料(例如一个点击事件或者一个敲击事件)的响应。接收到消息的对象则可以对消息进行解释,并将其作为一个特定于应用程序的指令进行处理。在本文将要创建的应用程序中,当按键被敲击时,它会通知控制器根据用户的输入更新模型和视图。下

13、页 上页 创建您的工程 在本章,您将使用 Xcode 创建前面所说的工程,同时还将查明应用程序的启动过程。Xcode 我们主要利用 Xcode 来创建 iPhone 应用程序,它是苹果的 IDE(集成开发环境)。您也可以利用它来创建各种不同类型的工程,包括 Cocoa 以及命令行工具。请注意:本书,我们约定 表示一个段落的开始(有时,该段落包含其后的无序列表),而段落容是教程里需要您执行的操作。代码列表不显示 Xcode 的模板文件里的注释。启动 Xcode(缺省情况下,Xcode 位于/Developer/Applictions 里面),然后请选择 File New Project,这样就可

14、以创建一个新工程。您应该会看到一个新的窗口,它和下图相似:您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创

15、建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 请注意:如果您没有看到“Use Core Data for storage”这一选项,则请您务必您安装 iPhone OS SDK 3.0 版本您应该安装Xcode3.1.3 或者更高的版本。请选中 Window-Based Application 并点击 Choose 按键。(请不要勾选“Use Core Data for storage”,本例不使用 Core Data 机制。)完成上述步骤后,屏幕会出现一表格。请在上面选择工程的存储位置。请选择一个合适的位置(例如您可以放在桌面也可以放在一个定制的工程

16、目录),然后为工程添加一个名称HelloWorld 再点击保存按键。请注意:在后续章节中,我们假定您将工程命名为 HelloWorld,因此应用程序的委托类就叫做 HelloWorldAppDelegate。如果使用其他名称,则应用程序委托类的名称将为您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们

17、位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 YourProjectName AppDelegate。完成上述步骤后,您将看到如下的新工程窗口:如果以前未曾用过 Xcode,则请花点时间来研究下该应用。请阅读 Xcode 工作空间指南,它可以帮助您理解工程窗口的组织方式以及如何执行诸如编辑和保存文件这样的基本任务。现在,您可以链编并运行程序,这样就能看到模拟器的

18、外观。请选择 Build Build and Go(Run)或者点击工具栏中的 Build and Go 按键。iPhone 模拟器应该会自动启动。当您的应用程序启动后,您只看到一个白色屏幕。如希望了解白色的屏幕从何而来,则您需先了解应用程序如何启动。退出模拟器。应用程序引导 您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程

19、您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 您创建的模板工程已设置了基本的应用程序环境。它创建一个应用程序对象,将应用程序和窗口服务器连接起来,建立一个运行循环以及其他等等。大部分的工作通过 UIApplicationMain函数完成,请看图 2-1。图 2-1 应用程序引导 main.m 文件中的 main 函数会调用 UIAppl

20、icationMain 函数:int retVal=UIApplicationMain(argc,argv,nil,nil);该函数将会创建一个 UIApplicaion 类的实例。同时它会搜索应用程序的 Info.plist 属性列表 文件。Info.plist 文件是一部字典,它包含诸如应用程序名称、图标这样的信息。它也可以包含应用程序对象应该加载的 nib 文件 的名称,该名称由NSMainNibFile 键指定。Nib 文件含有一份用户接口元素及其他对象的档案您将在后续章节进一步了解 Nib 文件的知识。本工程的 Info.plist 文件具有下面的容:您对基础开发过程有初步了解如果您

21、刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 N

22、SMainNibFile MainWindow 这表明应用程序启动时将会加载 MainWindow nib 文件。如希望查看 nib文件,请双击工程窗口 Resource group 中的 MainWindow.xib 文件。(虽然该文件的扩展名为“xib”,但是我们习惯称之为“nib 文件”)。Interface Builder 将会启动并打开该文件。Interface Builder 文档包含四个对象:一个 文件拥有者 代理对象。实际上,文件拥有者对象是UIApplication 实例我们将在“文件拥有者”一节讨论该对象。一个 第一响应者 代理对象。本教材并未使用第一响应者,但您对基础开发

23、过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.

24、Word 资 料 是您可以阅读 iiPhone 应用程序的编程指南 中的 事件处理 以了解更多信息。一个 HelloWorldAppDelegate 的实例,它会被设置成应用程序的 委托。我们将在下一节讨论委托。一个窗口。它被设置为白色背景、启动时可见。应用程序启动时,您看到的窗口就是它。应用程序完成启动后,您可以执行附加定制。下图描述一种通用模式您将在下一章使用它:应用程序对象在完成启动后会向委托发送applicationDidFinishLaunching:消息。通常情况下,委托不是自己配置用户接口,而是创建一个 视图控制器 对象(一种特定的控制器,它负责管理一个视图遵循“模型-视图-控制

25、器”描述的模型-视图-控制器设计模式)。然后委托向视图控制器请求视图(这个视图由视图控制器根据要求创建),并将其添加成窗口的子视图。小结 在本章,您创建了一个新工程并学习了应用程序的启动过程。下一章,您将定义并创建一个视图控制器实例。下页 上页 您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开

26、发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 添加一个视图控制器 在本文档的示例程序中,您需要使用两个类。一个是 Xcode 的应用程序模板提供的应用程序委托,程序在 nib文件中创建了一个该类的实例。另一个是需要您实现视图控制器类,您将创建该类的一个实例。添加一个视图控制器类 在大部分 iPhone 应用程序中,视图控制器起着核心作用。正如其名称所示,它负责管理一个

27、视图。在 iPhone 上,它们也帮助进行导航和 存管理。虽然本节例子程序不使用后两种功能,但对此有所了解很重要。UIKit提供一个特别的类 即UIViewController 类它封装了视图控制器应该具有的大部分缺省行为。您应从它派生子类,在子类中定制应用程序的行为。请选中 Xcode 项目管理器里的工程(即 HelloWorld 项目,位于 Groups and Files 列表的顶部)或者选中 Classes文件夹 新文件会被加入到当前选择的位置。请选择 File New File。在 New File窗口中,请选择 Cocoa Touch Classes,然后选择 UIViewCont

28、roller subclass。同时,请勾选 Options区域中标题为 With XIB for user interface 的选择框。您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设

29、计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 请注意:如果您没有看到“With XIB for user interface”选项,请确保您安装 iPhone OS SDK 3.0 版本-您应该安装Xcode3.1.3 或者更高的版本。选中“With XIB for user interface”表明 Xcode 在创建视图控制器的同时,会为其创建一份 nib文件,并将该文件添加到工程。(我们将在下一章详细讨论 Nib 文件。)请点击 Next,在其后出现的屏幕中为文件起

30、个名字,例如MyViewController。(类名称习惯以一个大写字母开头)。请务必创建.m 和.h文件,并将二者都添加到工程,如下所示:图 3-1 MyViewController 您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图

31、控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 请点击 Finish,文件会被添加到工程。看一下新建的源文件,您会发现 Xcode 已经为您提供了各种方法的存根实现。目前我们无需追究这些方法的具体含义。接下来,我们将创建一个控制器类的实例。添加一个视图控制器属性 您需确保在应用程序生存期间,视图控制器始终存在。将视图控制器作为应用程序委托的一个实例变量是解决该问题的一个明智的方法。(如希望了解其中因由,请参考 Cocoa 存管理

32、编程指南。)添加到应用程序委托的实例变量是 MyViewController 类的实例。如果您声明了变量但未告知编译器 MyViewController 类的相关信息,编译器就会报告错误。通过导入头文件可以解决该问题,但在 Cocoa 中,通常您应该使用一个前向声明(forward declaration)它向编译器承诺 MyViewController 类将在其他您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我

33、们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 地方定义,因此编译器现在无需耗时来对其执行检查。(如两个类需相互引用,则前向声明可以避免环状包含,即两个头文件互相包含。)然后,请将 MyViewController 类的头文件导入到应用程序委托的实现

34、文件。请在应用程序委托头文件(HelloWorldAppDelegate.h)的接口声明前面-即 HelloWorldAppDelegate 声明前面-添加前向声明:class MyViewController;请在头文件大括号之间添加下面的代码,这是为了向应用程序委托添加一个实例变量:MyViewController*myViewController;请在大括号之后 end 之前添加下面的 属性声明:property(nonatomic,retain)MyViewController*myViewController;Objective-C 编程语言 的 属性声明 有关于属性的描述,您可以参

35、考。基本上,上述声明指定:HelloWorldAppDelegate 实例含有一个属性,您可以使用 getter 和 setter 方法 即myViewController 和 setMyViewController:方法来访问该属性,同时,委托实例还会保持该属性(我们将在后续章节详细讨论保持)。为确保正确,请确认 HelloWorldAppDelegate 类的接口文件(即HelloWorldAppDelegate.h 文件)如下所示(不显示注释):#import 您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该

36、语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 class MyViewController;interface HelloWorldAppDel

37、egate:NSObject UIWindow*window;MyViewController*myViewController;property(nonatomic,retain)IBOutlet UIWindow*window;property(nonatomic,retain)MyViewController*myViewController;end 现在您可以开始创建视图控制器的实例。创建视图控制器实例 您已经把视图控制器属性添加到应用程序的委托,现在需要实际创建一个视图控制器实例,并将其设置为属性的值。请在应用程序委托类实现文件(即HelloWorldAppDelegate.m 文件

38、)中的applicationDidFinishLaunching:方法开头添加如下代码,这些代码用于创建一个 MyViewController 实例:您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教

39、程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 MyViewController*aViewController=MyViewController alloc initWithNibName:MyViewController bundle:NSBundle mainBundle;self setMyViewController:aViewController;aViewController release;虽然只有三行,但其中含意很多。这些代码作用如下:创建并 初

40、始化 一个视图控制器类的实例。使用存取方法将新建的视图控制器是设置为myViewController 实例变量值。请记住,您未单独声明setMyViewController:方法,而是隐式将其作为属性声明的一部分详情请参考“添加一个视图控制器属性”。依照存管理规则释放视图控制器。您先使用 alloc 方法创建一个视图控制器,然后用initWithNibName:bundle:方法对其进行初始化。init方法先指定控制器应加载的 nib文件,然后指定在哪个 程序包 中可找到该文件。程序包是文件系统某个位置的抽象,该位置存放了应用程序将会用到的代码和资源。相比自行定位文件系统的资源文件,使用程序包

41、有很多优势。它为我们提供了方便而简单的 APIbundle 对象仅通过名称就可以定位某个资源甚至连名称的本地化的工作,它也为您考虑了。如果您需要进一步研究程序包,请参考 资源编程指南。本书约定您应该拥有任何通过 alloc 方法创建的对象(请参考 存管理规则 了解其他约定)。因此,您还需要:放弃对所创建的对象的拥有权。通常只在初始化函数中调用存取方法来设置实例变量。上述代码第二行使用存取方法来设置实例变量,第三行调用release 方法以放弃对所创建对象的拥有权。您也可以使用其他方式来完成这些功能。例如,可以把这三行代码替换成下面两行:您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要

42、阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 MyViewControll

43、er*aViewController=MyViewController alloc initWithNibName:MyViewController bundle:NSBundle mainBundle autorelease;self setMyViewController:aViewController;该版本使用 autorelease 来放弃对新建视图控制器的所有权。不过此种方式中,放弃所有权的动作将在未来的某一时刻执行。如果不理解此代码的含义,则请阅读 Cocoa 存管理变成指南 中Autorelease Pools 一章。通常情况下,请尽可能地避免使用autorelease 方法,

44、因为相对于 release 方法来说,它是一种资源密集型操作。您也可以将最后一行替换如下:self.myViewController=aViewController;此处点号就是调用存取方法(即 setMyViewController:),这与前述实现调用的方法并无不同。点号确实提供一种更为紧凑的语法特别是在使用嵌套表达式的时候。将几个属性合在一起使用时,点号语法能带来一些附加好处,但到底选择哪种语法,则很大程度上取决于个人的偏好-请参考 Objective-C 编程语言 的 属性声明。如需进一步了解点号语法,请参看 Objective-C编程语言 中的 对象,类和消息 里面的“点号语法”。建

45、立视图 视图控制器负责管理和配置视图。您并不直接创建窗口的容视图,而是从视图控制器获取,并将其添加成窗口子视图。释放视图控制器后,请添加如下的代码:UIView*controllersView=myViewController view;您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文

46、档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 window addSubview:controllersView;您也可以使用一行代码来完成上面代码的功能:window addSubview:myViewController view;但是将代码分为两行有助于强调存管理的一个规则,它和我们之前看到的相反。由于您并未使用 Cocoa 存管理编程指南 中的存管理规则 里所列出的方

47、法来创建控制器视图,所以您并不拥有该视图。因此,把返回的对象传给窗口后,您无需再对其作后续处理(即不用释放这个对象)。最后一行来自于 IDE 提供的模板:window makeKeyAndVisible;这行代码会让窗口现已含有您的视图显示在屏幕上。之所以在窗口显示之前把视图添加进去,是为了防止用户在实际容显示前看到短暂的白屏。务处理 您还剩几个任务:导入视图控制器头文件,合成存取方法,在dealloc 方法中释放视图控制器(遵循存管理规则里面的规定)。请在应用程序委托类的实现文件(即HelloWorldAppDelegate.m)中执行下述操作:请在文件的顶部导入 MyViewControl

48、ler 的头文件:#import MyViewController.h 请在类的 implementation 代码块知编译器为视图控制器合成存取方法:您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的工具和技术重要为了学习本教程您需要安装和开发者工具它们位于开发中心文档描述的工具包含在里面请检查一下版本它不低于 现视图控制器排除疑难资料下一步做什么下页

49、教程概述和设计模式本章概述您将要创建的应用程序以及将会使用的设计模式教程概述在学习过程中您将创建一个很简单的应用程序它含有一个文本字段一个标签和一个按键您可以把名.Word 资 料 synthesize myViewController;请在 dealloc 方法起始处释放视图控制器:myViewController release;实现源码列表 为确保正确,请确定您的 HelloWorldAppDelegate 类的实现(即HelloWorldAppDelegate.m 文件)如下所示:#import MyViewController.h#import HelloWorldAppDelega

50、te.h implementation HelloWorldAppDelegate synthesize window;synthesize myViewController;-(void)applicationDidFinishLaunching:(UIApplication*)application 您对基础开发过程有初步了解如果您刚开始使用进行开发则您需要阅读本文档阅读之前您需要大致了解计算机编程基础尤其是要了解如未曾用过该语言则至少应通读学习入门教材本文档不是为了创建一个优雅漂亮的应用程序而是为 用户接口控件的用户输入另外我们还在教程中指出其他一些文档只有阅读这些文档您才充分理解开发的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁