2012-04-16 1 views
0

320을 사용하여 응용 프로그램을 만들려고하는데 TTnavigator의 루트 viewcontroller를 설정하는 데 문제가 있습니다. XT와 루트로 TTViewController

는 매핑 코드

TTURLMap* map = navigator.URLMap; 
[map from:@"*" toViewController:[TTWebController class]]; 
[map from:@"tt://root/(loadFromNib:)/(withClass:)" toViewController:[MainViewController class]]; 
명확하게

내가 사전 :

+1

TTNavigator를 사용 중입니다. 그게 네가 잘못한 짓이야 ;-) TTNavigator 없이는 여전히 three20을 사용할 수있다. 이전 "apple fashion"에서 TTViewController를 밀거나 팝하십시오. – aporat

답변

1

에서

덕분에 뭔가를 잘못하고 있어요 내가 그것을 파악 마침내

이 내 솔루션

입니다
-(void)applicationDidFinishLaunching:(UIApplication *)application 
{ 
    TTNavigator * navigator = [TTNavigator navigator]; 
    navigator.persistenceMode = TTNavigatorPersistenceModeAll; 
    navigator.window = self.window; 

    TTURLMap* map = navigator.URLMap; 
    [map from:@"*" toViewController:[TTWebController class]]; 
    [map from:@"tt://root/(loadFromNib:)/(withClass:)" toSharedViewController:self]; 

    if (![navigator restoreViewControllers]) { 
     [navigator openURLAction:[TTURLAction actionWithURLPath:@"tt://root/MainViewController/MainViewController"]]; 
    } 

} 
/** 
* Loads the given viewcontroller from the nib 
*/ 
- (UIViewController*)loadFromNib:(NSString *)nibName withClass:className { 
    UIViewController* newController = [[NSClassFromString(className) alloc] 
             initWithNibName:nibName bundle:nil]; 
    [newController autorelease]; 

    return newController; 
} 


/////////////////////////////////////////////////////////////////////////////////////////////////// 
/** 
* Loads the given viewcontroller from the the nib with the same name as the 
* class 
*/ 
- (UIViewController*)loadFromNib:(NSString*)className { 
    return [self loadFromNib:className withClass:className]; 
} 


/////////////////////////////////////////////////////////////////////////////////////////////////// 
/** 
* Loads the given viewcontroller by name 
*/ 
- (UIViewController *)loadFromVC:(NSString *)className { 
    UIViewController * newController = [[ NSClassFromString(className) alloc] init]; 
    [newController autorelease]; 

    return newController; 
} 


- (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)URL { 
    [[TTNavigator navigator] openURLAction:[TTURLAction actionWithURLPath:URL.absoluteString]]; 
    return YES; 
}