0

我正在尝试使用基于窗口的应用程序的默认 Xcode 模板构建我的第一个通用 iOS 应用程序 - 并将设备系列设置为“通用”。(我使用的是 Xcode 4,但我相信以前版本的 Xcode 的模板几乎相同。)

这将创建一个共享的应用程序代理,以及 iPhone 和 iPad 的特定应用程序代理。

由于 iPad 需要在应用程序启动时加载 SplitViewController,而 iPhone 需要加载 RootViewController(表格视图)——我决定尝试在设备特定的应用程序委托中覆盖 didFinishLaunchingWithOptions 方法,对于 iPhone 来说是这样的:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [super application:application didFinishLaunchingWithOptions:launchOptions];

    RootViewController *rootViewController = (RootViewController *)[_navController topViewController];
    rootViewController.context = [self managedObjectContext];

    [_window addSubview:_navController.view];

    return YES;
}

但是,由于 Xcode 将设备特定的应用程序委托文件放在“iPhone”或“iPad”组中,我收到一条错误消息,提示“找不到 RootViewController.h”文件......尽管尝试使用以下命令导入它:

#import "RootViewController.h"

有没有办法解决这个问题,还是我完全错误地解决了这个问题?我宁愿不要将“RootViewController.h”文件移动到 iPhone 组中,因为我认为它也会在 iPad 上使用。

4

1 回答 1

0

你应该遵循这个模型:http ://www.kotancode.com/2011/04/05/ios-universal-apps/你应该导入“RootViewController_iPhone.h”

于 2011-04-14T19:18:19.310 回答