如何通过项目模板定义向AppDelegate.m添加方法

时间:2013-04-03 04:33:27

标签: iphone ios

我克隆并修改了Apple的iOS项目模板,并能够将其方法定义如下:

<key>Definitions</key>
<dict>
    <key>___VARIABLE_classPrefix:identifier___AppDelegate.m:applicationdidFinishLaunchingWithOptions</key>
    <string>- (BOOL)application:(UIApplication *)application
        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
        UIViewController *mainViewController = [[AppMainViewController alloc] init];
                   self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
        self.window.backgroundColor = [UIColor whiteColor];
            [self.window makeKeyAndVisible];

            self.window.rootViewController = mainViewController;

            return YES;
    }
    </string>

代码在AppDelegate.m中很好地生成 但是,以下内容不会生成“myMethod”

<key>___VARIABLE_classPrefix:identifier___AppDelegate.m:myMethod</key>
        <string>- (void)myMethod:(NSManagedObjectContext *) managedObjectContext
        {
              //my code
        }
        </string>

如何通过模板定义将自己的方法引入到类中? 谢谢!

1 个答案:

答案 0 :(得分:1)

你的方法没有出现的原因是你所做的还不够。模板形成统一的层次结构。您只是给出了方法的定义。您还必须声明该方法存在。查看模板的祖先Cocoa Touch Application的templateInfo.plist,您将看到这种情况发生的位置。有一个Nodes数组列出了所有可能的方法。