Interface
Builder是一个用户界面工具,功能强大。不过对比其他一些界面建造工具如.net,Java,VB,甚至是wxWidget的界面工具,它不太直
观。所以新手有可能觉得不太好用。(我觉得Interface
Builder与其他一些界面工具最大区别是,它不直接产生代码)。不过如果仅仅是因为这个原因,而你又想成为iPhone编程高手,特别是编写一些非游
戏类程序,我的建议是读一些有关Interface Builder的教程或书籍,掌握Interface
Builder是必须的。当然,游戏游戏有自己的界面,不需要使用Interface Builder。
Interface
Builder直接生成的是.xib(以前叫.nib)文件(按惯例我就叫它nib文件),它将你的界面以object的形式存存储在文件中。我们知道每
个iPhone(Xcode)项目都有一个.plist文件,其中有一项叫做“Main nib file base
name”,它指向了程序启动时要调用的nib文件MainWindow.xib。关于Interface
Builder的工作流程,以及启动时的调用我将在另一篇文章中介绍,在此我就不多罗嗦了。
总而言之,每个Object-C的程序都像c或c++一样有一个main函数,它是整个程序的入口(在main.m中)。iPhone程序的main函数 中,调用了iPhone程序的UIApplicationMain。它的格式是:
1
2 3 4 5 6 |
第一,二个参数,如果熟悉c/c++的朋友一定很清楚,它们是用来传递命令行参数的,iPhone程序一般不用。principalClassName指 向UIApplication类或之类。delegateClassName指向遵循UIApplicationDelegate协议的delegate 类。
如果我们不想使用Interface Builder,我们要做的就是:
1. 将plist文件中的“Main nib file base name”项删除。
2. 删除了“Main nib file base
name”项后,如果principalClassName,delegateClassName为nil的话,程序就无以为继了,其结果就是显示黑屏。
所以,我们必须用principalClassName或delegateClassName参数告诉iPhone我们程序的切入点。有两种方式。如果你
建立一个UIApplication的子类,那么你就要用principalClassName来指定。比如你建立一个Application类,示例如
下:
1
2 3 4 |
@interface
Application :
UIApplication
{ } @end |
你必须这样调用UIApplicationMain:
1
|
UIApplicationMain(
argc,argv,@
"Application"
,nil
)
;
|
第二种方式是,你创建一个代理类,示例如下:
1
2 3 4 |
@interface
AppDelegate :
NSObject<UIApplicationDelegate>
{ } @end |
你必须这样调用UIApplicationMain:
1
|
UIApplicationMain(
argc,argv,nil
,@
"AppDelegate"
)
;
|
这样iPhone就知道你程序的真正入口了。当然,剩下的工作就需要你自己完成了,比如自己创建View Controller或直接创建View,或者干脆直接调用你的游戏引擎,不过不要忘记在applicationDidFinishLaunching中 创建一个UIWindow。
为了方便我建立了一个项目模板,此模板包括一个AppDelegate和一个MainViewController。使用此模板,你所有的工作只需从 MainViewController的loadView或viewDidLoad中开始。
你可以直接解压使用,或者将其解压到/Developer/Platforms/iPhoneOS.platform/Developer /Library/Xcode/Project Templates/Application/下作为Xcode模板使用。
相关推荐
本教程将深入探讨如何在iPhone应用中使用UITableView进行排序、搜索以及通过Interface Builder进行创建。 首先,我们来了解一下UITableView的基本概念。UITableView是一个视图控件,用于显示一列或多列数据,每个...
创建一个新的iPhone项目,SDK会自动生成一些基础文件,包括AppDelegate.m和相应的视图类。但在这个例子中,我们并不需要默认的视图类(MyView),而是要用Interface Builder生成的xib文件来替代。 3. 替换默认代码:...
iPhone开发基础教程 相配套源码。 第2章 创建基本项目 2.1 在Xcode中设置项目 2.2 InterfaceBuilder简介 2.2.1 nib文件的构成 2.2.2 在视图中添加标签 2.3 iPhone美化 2.4 小结 第3章 处理基本...
* 使用 Xcode 和 Interface Builder,我们可以快速地设计和开发 iPhone 应用程序。 知识点二:View-based Application 的开发 * View-based Application 是一种常见的 iPhone 应用程序类型,使用 Xcode 的模板来...
还会涵盖iOS应用的基本架构,如Model-View-Controller (MVC)设计模式,以及界面构建,使用Interface Builder和Auto Layout创建动态布局。 第三篇可能进一步深入到iOS开发的特定领域,如网络编程(如使用URLSession...
在开发过程中,开发者需要熟悉Xcode的基本操作、Interface Builder的使用,以及iOS SDK的基本编程概念,包括Objective-C或Swift语言的基础,以及如何管理UI组件和编写事件处理代码。通过这个入门教程,开发者可以对...
5. **Interface Builder**: Xcode中的Interface Builder允许开发者通过拖放的方式设计用户界面,与代码相结合,实现可视化编程。 6. **Model-View-Controller (MVC)**: MVC是一种软件设计模式,常用于iOS开发,将...
iOS提供了多种UI组件,如按钮、文本框、标签、滑块等,这些组件可以使用Interface Builder或纯代码方式创建。此外,还会介绍Auto Layout和Size Classes,它们帮助开发者实现自适应布局,确保应用在不同屏幕尺寸的...
Xcode提供了Interface Builder,一个图形界面设计工具,用于创建用户界面,以及Swift或Objective-C的代码编辑器,这两种语言是iOS开发的主要编程语言。 Swift是Apple在2014年推出的现代编程语言,它具有简洁的语法...
在本项目中,“iPhone开发西安旅游项目”是一个针对初学者的教程,旨在教授如何使用iOS平台的开发工具来创建一个与旅游相关的应用程序,特别是聚焦于中国历史文化名城——西安。这个项目不仅涵盖了基本的iOS应用开发...
总的来说,开发这款iPhone计算器应用涉及到的知识点包括:Xcode的使用、Objective-C或Swift编程、Interface Builder界面设计、UIViewController的事件处理、错误处理、应用测试与发布、以及Apple的App Store审核流程...
《iPhone开发基础教程-PDF版》是一份专为初学者设计的全面指南,旨在帮助读者掌握iOS应用开发的基础知识...通过实践教程中的例子和项目,你将能够独立开发出自己的iPhone应用,并为进一步深入学习和创新打下坚实基础。
《深入浅出iPhone开发(中文版)》是针对iPhone应用开发的一本专业书籍,由丹皮洛内原著,鲁成东翻译。这本书旨在为读者提供一个全面、深入且易懂的iPhone开发学习路径,帮助开发者从零基础快速掌握iPhone应用程序的...
- 开发环境主要依赖于Xcode,它是苹果提供的集成开发环境(IDE),包含了一个代码编辑器、界面构建工具Interface Builder以及用于编译和测试应用的工具链。 - Interface Builder允许开发者通过拖放方式设计用户...
在iOS开发领域,iPhone应用程序的开发是至关重要的。本教程将深入探讨iPhone开发的基础知识,主要基于Apple的Swift编程语言,这是iOS应用开发的首选语言。源代码的提供旨在帮助初学者更好地理解理论知识的实际应用。...