我正在开发一个通用应用程序,我在做iPad应用程序时使用了UISplitViewController。我遵循通用应用程序指南,即我将基本SDK保持为3.2,iPhone目标操作系统广告iPhone OS 3.1.3,Taget设备保持为iPhone / iPad。我为UISplitViewController和UIPopOverController使用了“为新符号添加运行时检查”。
Class splitVCClass = NSClassFromString(@"UISplitViewController");
if (splitVC)
{
UISplitViewController* mySplitViewController = [[splitVCClass alloc] init];
// Configure the split view controller.
}
我在.m文件中使用了这个,我在.h文件中声明了UIPopOverController
“dyld:未找到符号: _OBJC_CLASS _ $ _ UIPopoverController参考自: /var/mobile/Applications/9E0CE75F-D2A9-4132-AE56-1780928BCF21/UniversalTasks.app/UniversalTasks 期望: /System/Library/Frameworks/UIKit.framework/UIKit 在 /var/mobile/Applications/9E0CE75F-D2A9-4132-AE56-1780928BCF21/UniversalTasks.app/UniversalTasks“
我必须做的事情可以让任何人帮助我
答案 0 :(得分:6)
我不完全确定,但也许这会有所帮助:
Class classPopoverController = NSClassFromString(@"UIPopoverController");
if (classPopoverController)
{
id popover = [[classPopoverController alloc] initWithContentViewController:imgPicker];
[popover presentPopoverFromRect:CGRectMake(0, 0, popoverParent.frame.size.width, 80)
inView:popoverParent permittedArrowDirections:(1UL << 0) animated:YES];
}
基本上你需要用“id”替换“UIPopoverController *”,因为早期的SDK中没有定义这个符号。
答案 1 :(得分:0)
正确答案在这里:Symbol not found: _OBJC_CLASS_$_UIPopoverController
首先,您必须采用原始海报的隐含说明:将所有仅限iPad的代码(弹出式窗口等)移至iPad子类等。然后按照最终答案进行操作。