iPhone UIKit详解
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 关于Xcode 4及在Xcode 4中创建Hello World程序

1.4.1 Xcode 4概要

Xcode 4是Mac应用程序(包括iPhone应用程序)开发的最新集成开发环境,相对于旧版本的Xcode 3系列集成开发环境,Xcode 4将Interface Builder集成到同一窗口中,而在Xcode 3中需要另外启动Interface Builder工具进行界面设计。另外,Xcode 4中还追加了类似于在Interface Builder中设计界面的“DashCode”一样的“Storyboard”,可以在其中设计应用程序界面,也是“所见即所得”。Xcode 4集成开发环境如图1-16所示。

图1-16 Xcode 4集成开发环境

1.4.2 使用Xcode 4创建Hello World应用程序

本节开始我们使用Xcode 4来创建上述几节中见到的“Hello World!”程序。选择“File”→“NEW”→“NEW PROJECT”选项后,会显示如图1-17所示的工程模板选择画面。

图1-17 Xcode 4工程模板选择画面

选择“Master-Detail Application”模板(保持默认选择即可),然后单击“Next”按钮,进入如图1-18所示的工程信息输入窗口。

图1-18 工程信息输入窗口

依次在“Product Name”文本框中输入“Hello World”,在“Company Identifier”文本框中输入自己的工程标示符,当然也可以为空,在进行实机测试(iPhone手机/iPad电脑)以及发布时会使用到此标示符。接着在“Device Family”处选择“iPhone”,保持其他默认选项,然后单击“Next”按钮。此时会弹出如图1-19所示的保存目录选择窗口。

图1-19 保存目录选择窗口

选择合适的工程保存目录后,单击“Create”按钮后即完成了工程创建过程。

接下来在Xcode 4中完成“Hello World!”应用程序的界面设计,即追加“Hello World!”标签了。Xcode 4中界面的设计工作相对Xcode 3来说更简单些。

选择其中针对iPhone的StoryBoard,如图1-20所示。然后从右侧的对象框中将Label对象拖入到StoryBoard中,将标签“Label”修改成“Hello World!”即可。

图1-20 设计“Hello World!”应用程序界面

完成上述操作后保存。在工程窗口的右上角选择“iPhone 5.0 Simulator”,然后单击“Run”按钮(三角形按钮),开始测试我们的“Hello World!”应用程序。程序建立完成后,显示如图1-21所示的“Hello World!”应用程序界面。

图1-21 “Hello World!”应用程序运行结果

1.4.3 在Xcode 4中编写代码

Xcode 4中也与Xcode 3一样可以不使用“所见即所得”的图形设计功能,采取手动方式编写代码,甚至部分使用图形设计,部分采取手动编写的方式进行iPhone应用程序开发。

下面在上述“Hello World!”应用程序的基础上,在原“Hello World!”标签下,以手写代码方式追加一个红色文字的“Hello World!”。代码追加在ViewController类的viewDidLoad方法中,追加的代码如下。

-(void)viewDidLoad
{
    [super viewDidLoad];
  // Do any additional setup after loading the view,typically from a nib.
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(110,220,120,30)];
    label.text = @"Hello World!";
    label.textColor = [UIColor redColor];[self.view addSubview:label];}

我们在viewDidLoad方法中追加了四行代码,依次完成的功能如下。

  • 创建UILabel并创始化;
  • 设置标签的字符串内容为“Hello World!”;
  • 设置标签的字符颜色;
  • 追加到主画面(self.view)中。

其中,在初始化标签对象时使用了initWithFrame:方法,在CGRectMake(110,220,120,30)函数中定义了一个起点坐标为(110,220)、度宽为120,高度为30的矩形区域(注意单位为像素)。关于标签的定义后面章节中会有详细介绍。

在第1.3节我们也手动追加了标签的代码,比较后可以发现,这里没有对标签执行release的方法,这也是Xcode 4与Xcode 3在开发iPhone应用程序时的区别:Xcode 4中实现了自动参照统计,不用再明确对变量调用release或者autorelease方法进行参照统计管理了,这样一来当然会减轻程序员不少负担。

单击“Run”按钮后,程序运行后,显示如图1-22所示的效果。

图1-22 “Hello World!”应用程序运行结果