访问的viewController财产
问题描述:
我使用这个功能:访问的viewController财产
- (NSUInteger)indexOfViewController:(UIViewController *)viewController
{
return viewController.ident; // this doesn't work: property 'ident' not found
}
在此功能中有都可以从不同类型的就这么过去了viewControllers
:VC1,VC2,VC3,VC4,......他们都有一个' ident
'财产并从UIViewController
继承。我怎样才能访问这个属性?
答
您需要的viewController
投到具有ident
属性类。或者使用valueForKey
这样做:
- (NSUInteger)indexOfViewController:(UIViewController *)viewController
{
return [[viewController valueForKey:@"ident"] integerValue];
}
答
你可以试试下面这行代码:
return [viewController performSelector:@selector(ident)];
有办法做到这一点,但你也应该考虑结构变化,使所有那些具有“的ident”属性viewcontrollers从同一个超类的子类 – guenis 2013-04-29 12:22:05