Iphone 通用应用程序中的UISplitViewController子类
我正在构建一个通用应用程序,它在iPad上使用UISplitViewController,并且应该可以在任何3.0设备上运行,比如第一代iPhone/iPodtouch。问题是,尽管在iPhone上运行应用程序时,我并没有实际创建任何UISplitViewController实例,但我仍然感到害怕Iphone 通用应用程序中的UISplitViewController子类,iphone,ipad,uisplitviewcontroller,Iphone,Ipad,Uisplitviewcontroller,我正在构建一个通用应用程序,它在iPad上使用UISplitViewController,并且应该可以在任何3.0设备上运行,比如第一代iPhone/iPodtouch。问题是,尽管在iPhone上运行应用程序时,我并没有实际创建任何UISplitViewController实例,但我仍然感到害怕 dyld: Symbol not found: _OBJC_CLASS_$_UISplitViewController Referenced from: /var/mobile/Applicati
dyld: Symbol not found: _OBJC_CLASS_$_UISplitViewController
Referenced from: /var/mobile/Applications/.....
Expected in: /System/Library/Frameworks/UIKit.framework/UIKit
尝试在第1代iPod touch上运行时控制台出现错误。不过,在iOS 4设备上一切正常。我猜问题是我已经将UISplitViewController子类化了,当从.h文件中读取“@interface SplitControl:UISplitViewController{”行时,它会阻塞
我将其子类化的唯一原因是重写shouldAutorotateToInterfaceOrientation方法。我以编程方式完成整个应用程序,没有IB。如果我使用IB创建SplitViewController并告诉它支持所有方向,会有帮助吗
有没有一种方法可以覆盖shouldAutorotateToInterfaceOrientation而不将控制器子类化?有没有其他方法可以从3.2之前的设备中隐藏UIPlitViewController?您需要做的就是弱链接UIKit.framework。在目标的常规设置中,在“链接库”列表中将UIKit.framework的类型更改为“弱”而不是“必需的”。我是根据基本SDK 4.0构建的,所以像“#if"IPHONE"OS"VERSION"MAX"ALLOWED>=30200”这样的宏没有帮助。我需要在运行时解决这个问题,而不是在编译时。