现在,无涯教程将创建一个简单的单视图应用程序(空白应用程序),该应用程序将在iOS模拟器上运行。
步骤如下。
第1步 - 打开Xcode,然后选择创建新的Xcode项目。
第2步 - 选择Single View Application。
第3步 - 输入产品名称,即应用程序名称,组织名称,然后输入公司标识符。
第4步 - 确保已选择使用自动引用计数,以便在超出范围后自动释放分配的资源。点击下一步。
第5步 - 选择项目目录,然后选择创建。
第6步 - 您将看到如下屏幕-
在上面的屏幕中,您将能够选择支持的方向,构建和发布设置。有一个现场部署目标,即无涯教程要支持的设备版本,请选择4.3,这是现在允许的最低部署目标。
第7步 - 现在,在运行按钮附近的下拉列表中选择iPhone模拟器,然后选择"Run"。
第8步 - 就是这样;您已经成功运行了第一个应用程序。您将获得如下输出:
现在,让无涯教程更改background color,只是从界面构建器入手。选择ViewController.xib。选择右侧的背景选项,更改颜色并运行。
在以上项目中,默认情况下,部署目标将设置为iOS 6.0并启用自动布局,为确保无涯教程的应用程序可以在iOS 4.3及更高版本的设备上运行,无涯教程已经在创建此应用程序开始时修改了部署目标,但并未禁用自动布局。
要禁用自动布局,无涯教程需要在每个笔尖的文件检查器中取消选择自动布局复选框,下图给出了Xcode项目IDE的各个部分(Apple Xcode 4用户文档)。
如上所示,可以在检查器选择器栏中找到文件检查器,并且可以在此处取消选中自动布局,当您只想定位iOS 6设备时,可以使用自动布局。现在,让无涯教程坚持将iOS 4.3作为部署目标。
您会发现将为您的应用程序生成五个不同的文件。它们列出如下-
//提供所有 UI 相关项的头文件。 #import <UIKit/UIKit.h> //前向声明(在将来定义(defined)/导入(imported)类时使用) @class ViewController; //Appdelegate 接口 @interface AppDelegate : UIResponder <UIApplicationDelegate> //属性窗口 @property (strong, nonatomic) UIWindow *window; //属性视图控制器 @property (strong, nonatomic) ViewController *viewController; //这标志着界面的结束 @end
代码中的重要项目-
AppDelegate继承自处理iOS事件的UIResponder。
实现UIApplicationDelegate的委托方法,该方法提供关键的应用程序事件,如完成启动,即将终止等。
UIWindow对象,用于管理和协调iOS设备屏幕上的各种视图。就像加载所有其他视图的基本视图一样。通常,一个应用程序只有一个窗口。
UIViewController处理屏幕流。
//导入类 Appdelegate 的接口 import "AppDelegate.h" //导入要加载的ViewController #import "ViewController.h" //类定义从这里开始 @implementation AppDelegate //提示我们应用程序启动成功的方法 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; //应用程序启动后自定义的覆盖。 self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil]; self.window.rootViewController = self.viewController; [self.window makeKeyAndVisible]; return YES; } - (void)applicationWillResignActive:(UIApplication *)application { /* 使用此方法释放共享资源,保存用户数据, 使定时器失效,并存储足够的应用程序状态信息 将您的应用程序恢复到当前状态,以防万一 后来终止。如果您的应用程序支持后台 执行,这个方法被调用而不是 applicationWillTerminate:当用户退出时。*/ } - (void)applicationWillEnterForeground:(UIApplication *)application { /* 作为从后台到后台转换的一部分调用 非活动状态。在这里您可以撤消对 进入后台。*/ } - (void)applicationDidBecomeActive:(UIApplication *)application { /* 重新启动任何暂停(或尚未开始)的任务,同时 该应用程序处于非活动状态。如果该应用程序以前在 背景,可选地刷新用户界面。.*/ } - (void)applicationWillTerminate:(UIApplication *)application { /* 当应用程序即将终止时调用。保存数据,如果 合适的。另请参阅 applicationDidEnterBackground:。 */ } - (void)applicationWillTerminate:(UIApplication *)application { /* 当应用程序即将终止时调用。如果合适,保存数据。 另请参阅 applicationDidEnterBackground:。 */ } @end
代码中的重要项目-
UIApplication委托在此处定义。上面定义的所有方法都是UI应用程序委托,并且不包含用户定义的方法。
已分配UIWindow对象以保存分配的应用程序。
UIViewController被分配为窗口的初始视图控制器。
要使窗口可见,将调用makeKeyAndVisible方法。
#import <UIKit/UIKit.h> //类 ViewController 的接口 @interface ViewController : UIViewController @end
代码中的重要项目-
ViewController类继承了UIViewController,后者为iOS应用程序提供了基本的视图管理模型。
#import "ViewController.h" //Category, ViewController 类的扩展 @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; //在加载视图后进行任何额外的设置,通常是从一个 nib 开始。 } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; //处置任何可以重新创建的资源。 } @end
代码中的重要项目-
在基类UIViewController中定义了此处实现的两个方法。
链接:https://www.learnfk.comhttps://www.learnfk.com/ios/ios-first-iphone-application.html
来源:LearnFk无涯教程网
在viewDidLoad中执行初始设置,该设置在视图加载后调用。
didReceiveMemoryWarning方法。
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)