我已经发现了我发现的关于创建使用UISplitViewController的通用应用程序的所有帖子,并在iPhone上运行(当然没有它)和iPad。
我的目标设备系列=> iPhone / iPad版 iPhone OS部署=> iPhone OS 3.0 Base SDK => iPhone设备3.2
我的UIKit.framework在我的目标通用
中是'弱参考'在我使用UISplitViewController * splitViewController的地方;我收到了错误。
据我所知,iPhone SDK 3.x没有UISplitViewController,但SDK的基础是3.2。
我应该使用这样的条件吗?
Class splitVCClass = NSClassFromString(@"UISplitViewController");
if (splitVCClass)
{
UISplitViewController* mySplitViewController = [[splitVCClass alloc] init];
// Configure the split view controller.
}
但是我会在这里再次使用UISplitViewController ...
谢谢!
的问候,
米。
一般代码:
#import <UIKit/UIKit.h>
@class iPad_RootViewController;
@class iPad_DetailViewController;
@interface AppDelegate_Pad : NSObject <UIApplicationDelegate> {
UIWindow *window;
UISplitViewController *splitViewController;
iPad_RootViewController *rootViewController;
iPad_DetailViewController *detailViewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UISplitViewController *splitViewController;
@property (nonatomic, retain) IBOutlet iPad_RootViewController *rootViewController;
@property (nonatomic, retain) IBOutlet iPad_DetailViewController *detailViewController;
@end
错误是:
iPad/AppDelegate_Pad.h:18: error: expected specifier-qualifier-list before 'UISplitViewController'
UISplitViewController是黑色的,就像它没有被标记化一样
我也跟着这个:Apple iPad Programming Guide
答案 0 :(得分:0)
好的,我看到问题只出在Simulator中运行时,因为我被迫编译为3.x而UISplitViewController不在这个SDK中,所以我必须添加一堆#ifdef它...
答案 1 :(得分:0)
Apple Documentation针对通用应用程序说“iPhone OS Deployment =&gt; iPhone OS 3.1.3”。
,并尝试这样,
if(splitVCClass){
id * mySplitViewController = [[splitVCClass alloc] init];
}