在iOS 3.0上找不到Xcode 4.2、Three20符号:_OBJC_CLASS_$_UISplitViewController

在iOS 3.0上找不到Xcode 4.2、Three20符号:_OBJC_CLASS_$_UISplitViewController,xcode,three20,uisplitviewcontroller,Xcode,Three20,Uisplitviewcontroller,我正在使用Xcode 4.2和Three20创建可以在所有iOS上运行的应用程序 当我在iOS 3.0的iPhone 3G上运行应用程序时, 我在调试控制台中看到带有以下消息的崩溃: dyld: Symbol not found: _OBJC_CLASS_$_UIPopoverController Referenced from: /var/mobile/Applications/7AB01877-55F2-4A5F-A835-FF7849D6E285/Xcode4M.app/Xcode4M

我正在使用Xcode 4.2和Three20创建可以在所有iOS上运行的应用程序

当我在iOS 3.0的iPhone 3G上运行应用程序时,
我在调试控制台中看到带有以下消息的崩溃:

dyld: Symbol not found: _OBJC_CLASS_$_UIPopoverController
  Referenced from: /var/mobile/Applications/7AB01877-55F2-4A5F-A835-FF7849D6E285/Xcode4M.app/Xcode4M
  Expected in: /System/Library/Frameworks/UIKit.framework/UIKit
我照此操作并修复了碰撞。 现在我收到另一个崩溃消息:

dyld: Symbol not found: _OBJC_CLASS_$_UISplitViewController
  Referenced from: /var/mobile/Applications/7AB01877-55F2-4A5F-A835-FF7849D6E285/Xcode4M.app/Xcode4M
  Expected in: /System/Library/Frameworks/UIKit.framework/UIKit
我试图用同样的方法修复这个崩溃,但没有成功

你知道怎么解决这个问题吗

编辑(添加有问题的代码)

文件:TTSplitViewController

@interface TTSplitViewController : UISplitViewController 
<UISplitViewControllerDelegate, TTNavigatorRootContainer> {
@private
  TTNavigator* _leftNavigator;
  TTNavigator* _rightNavigator;
  UIBarButtonItem*      _splitViewButton;
  id  _popoverSplitController;
}
@接口TTSplitViewController:UISplitViewController
{
@私人的
TTNavigator*_leftNavigator;
TTNavigator*_rightNavigator;
UIBarButtonItem*_splitViewButton;
id_PopOverplitController;
}

我取消选中目标成员身份中的TTSplitViewController.hTTSplitViewController.m
并评论这句话

//#import "Three20UI/TTSplitViewController.h"  
//#import "Three20UICommon/UISplitViewController+TTNavigator.h"  
320ui.h中

并从其目标成员身份中取消选中UISplitViewController+TTNavigator.hUISplitViewController+TTNavigator.m

并评论这句话

//#import "Three20UI/TTSplitViewController.h"  
//#import "Three20UICommon/UISplitViewController+TTNavigator.h"  
三个20ui普通+加法中.h


我可以工作,但我更愿意这样做,以便以后可以使用这些类。如果有人知道怎么做,我会很高兴。

我取消选中目标成员中的TTSplitViewController.hTTSplitViewController.m
并评论这句话

//#import "Three20UI/TTSplitViewController.h"  
//#import "Three20UICommon/UISplitViewController+TTNavigator.h"  
320ui.h中

并从其目标成员身份中取消选中UISplitViewController+TTNavigator.hUISplitViewController+TTNavigator.m

并评论这句话

//#import "Three20UI/TTSplitViewController.h"  
//#import "Three20UICommon/UISplitViewController+TTNavigator.h"  
三个20ui普通+加法中.h


我可以工作,但我更愿意这样做,以便以后可以使用这些类。如果有人知道怎么做我会很高兴的。

是的。您可以在上的pull请求中看到代码。它解决了除TTSplitViewController之外的所有3.1问题

它使用three20的特殊函数来创建UIPopViewController

_popoverController =  [[TTUIPopoverControllerClass() alloc] init];
  if (_popoverController != nil) {
    [_popoverController setContentViewController:controller];
    [_popoverController setDelegate:self];
  }

您仍然需要注释掉TTSplitViewController,但是这是IOS3.1中唯一存在问题的类。(请参见拉动请求中的注释)

是。您可以在上的pull请求中看到代码。它解决了除TTSplitViewController之外的所有3.1问题

它使用three20的特殊函数来创建UIPopViewController

_popoverController =  [[TTUIPopoverControllerClass() alloc] init];
  if (_popoverController != nil) {
    [_popoverController setContentViewController:controller];
    [_popoverController setDelegate:self];
  }
您仍然需要注释掉TTSplitViewController,但是这是IOS3.1中唯一存在问题的类。(请参见拉动请求中的注释)