2010-12-13 56 views
4

我以为我想和大家分享一下Three20框架的知识。Three20 TTNavigator TTViewController自动加载XIB

如果您使用TTNavigator并且您有自定义的VC,它是TTViewController的子类,这很烦人。它不会自动加载NIB。

TTNavigator* navigator = [TTNavigator navigator]; 
TTURLMap* map = navigator.URLMap; 
[map from: @"app://myvc" toViewController: [MyVC class]]; 

有一个解决方法和非常优雅的解决方案。

只是要TTViewController的另一个子类,并覆盖类有这样的:

- (void) loadView 
{ 
    [super loadView]; 

    // load automatically the NIB 
    [[NSBundle mainBundle] loadNibNamed: NSStringFromClass([self class]) owner: self options: nil]; 
} 

当正在加载第一次VC的VC会自动加载NIB。

回答

1

samples目录中的TTNibDemo项目有一个VC,它是TTViewController的子类。这个VC有一个笔尖,它在AppDelegate中加载一个函数。如果这不适合你,请检查它。

+0

是的,我看到它,它是丑陋的。您需要每次提供NIB名称并将自定义功能放入URL中。 – kororo 2010-12-15 00:57:47