从子类访问uinavigationbar?
答
只要视图是一个的viewController这是导航堆栈的一部分,你可以这样做:
viewController.navigationController.navigationBar.tintColor = [UIColor blackColor];
要访问的viewController,你可以声明一个id为您的视图类伊娃:
id myParentViewController;
将此id声明为属性,以便可以从视图外部访问它。
当创建从的viewController的观点,你可以通过做传递一个参考的viewController到视图:
view.myParentViewController = self;
凡self
将是参照导航堆栈上的的viewController。
现在,您可以在视图的时候,你可以通过做这个访问的导航栏:
if([myParentViewController isKindOfClass:[UIViewController class]])
{
UIViewController *theParentViewController = (UIViewController*)myParentViewController;
theParentViewController.navigationController.navigationBar.tintColor = [UIColor blackColor];
}
答
您可以从UINavigationController访问UINavigationBar。一种方法是将UINavigationController或UINavigationBar作为参数传递给UIView。或者UIView可以使用委托来通知外部UIViewController执行工作。
如何你现在干什么呢? – 2011-05-20 23:47:05