2013-04-29 63 views
1

我使用这个功能:访问的viewController财产

- (NSUInteger)indexOfViewController:(UIViewController *)viewController 
{ 
    return viewController.ident; // this doesn't work: property 'ident' not found 
} 

在此功能中有都可以从不同类型的就这么过去了viewControllers:VC1,VC2,VC3,VC4,......他们都有一个' ident'财产并从UIViewController继承。我怎样才能访问这个属性?

+0

有办法做到这一点,但你也应该考虑结构变化,使所有那些具有“的ident”属性viewcontrollers从同一个超类的子类 – guenis 2013-04-29 12:22:05

回答

1

您需要的viewController投到具有ident属性类。或者使用valueForKey这样做:

- (NSUInteger)indexOfViewController:(UIViewController *)viewController 
{ 
    return [[viewController valueForKey:@"ident"] integerValue]; 
} 
-1

你可以试试下面这行代码:

return [viewController performSelector:@selector(ident)];