Где я могу найти информацию об использовании универсального приложения на iPhone, которое использует UISplitViewController? - PullRequest
1 голос
/ 23 июня 2010

Я следил за всеми сообщениями о создании универсального приложения, которое использует UISplitViewController и прекрасно работает на iPhone (без него, конечно) и на iPad.

Моя фамилия целевого устройства - => iPhone / iPad Развертывание iPhone OS => iPhone OS 3.0 Базовый 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

Ответы [ 2 ]

0 голосов
/ 12 июля 2010

Документация Apple гласит «Развертывание iPhone OS => iPhone OS 3.1.3» для универсальных приложений.

и, попробуйте так,

if (splitVCClass) {

id * mySplitViewController = [[splitVCClass alloc] init];

}

0 голосов
/ 25 июня 2010

ОК, я вижу, что проблема только в работе в симуляторе, так как я вынужден скомпилировать в 3.x, а UISplitViewController не находится в этом SDK, поэтому я должен добавить кучу #ifdef вокругэто ...

...