首页 » iOS编程(第4版) » iOS编程(第4版)全文在线阅读

《iOS编程(第4版)》12.2 创建TouchTracker应用

关灯直达底部

下面创建一个名为TouchTracker的应用。通过Xcode的Empty Application模板,创建一个新的iPhone项目并将其命名为TouchTracker。Class Prefix保持与之前项目相同,填入BNR(见图12-2)。

图12-2 创建TouchTracker

首先,TouchTracker需要一个能够描述线条的模型对象。创建一个新的NSObject子类并将其命名为BNRLine。在BNRLine.h中,声明两个CGPoint类型的属性,代码如下:

#import <Foundation/Foundation.h>

@interface BNRLine : NSObject

@property (nonatomic) CGPoint begin;

@property (nonatomic) CGPoint end;

@end

接着,创建一个新的NSObject子类并将其命名为BNRDrawView。在BNRDrawView.h中,将BNRDrawView的父类改为UIView,代码如下:

#import <Foundation/Foundation.h>

@interface BNRDrawView : NSObject

@interface BNRDrawView : UIView

@end

下面创建一个UIViewController子类,用于管理BNRDrawView对象。创建一个新的NSObject子类并将其命名为BNRDrawViewController。在BNRDrawViewController.h中,将BNRDrawViewController的父类改为UIViewController,代码如下:

@interface BNRDrawViewController : NSObject

@interface BNRDrawViewController : UIViewController

在BNRDrawViewController.m中,先导入BNRDrawView.h,然后覆盖loadView方法,创建一个BNRDrawView对象并将其赋给BNRDrawViewController对象的view属性,代码如下:

#import “BNRDrawViewController.h”

#import “BNRDrawView.h”

@implementation BNRDrawViewController

- (void)loadView

{

self.view = [BNRDrawView alloc] initWithFrame:CGRectZero];

}

@end

在BNRAppDelegate.m中,先导入BNRDrawViewController.h,然后创建一个BNRDrawViewController对象,并将新创建的对象设置为UIWindow的rootView- Controller,代码如下:

#import “BNRAppDelegate.h”

#import “BNRDrawViewController.h”

@implementation BNRAppDelegate

- (BOOL)application:(UIApplication *)application

didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

// 在此处加入自定义代码

BNRDrawViewController *dvc = [[BNRDrawViewController alloc] init];

self.window.rootViewController = dvc;

self.window.backgroundColor = [UIColor whiteColor];

[self.window makeKeyAndVisible];

return YES;

}

图12-3是目前TouchTracker的对象图。

图12-3 TouchTracker对象图