ios – 如何在prepareForSegue期间在目标视图控制器上设置标题:

我想简单地在我的目标视图控制器上设置标题,以便它在prepareForSegue:方法的导航控制器的导航栏中显示,但是设置它的标题或navigationItem如下:

[segue.destinationViewController setTitle:@“不起作用”];
[segue.destinationViewController.navigationItem setTitle:@“this both”];

不起作用可能是因为目标的视图控制器的视图尚未加载.我可以不创建自定义目标视图控制器吗?

解决方法

尝试像这样访问嵌入在UINavigationController中的ViewController.
首先,在界面构建器中为segue指定一个标识符,然后在prepareForSegue方法中访问segue,并通过访问您所选择的导航控制器的topViewController属性来设置标题.
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"yourSegueIdentifier"]) {
        UINavigationController *navController = 
           (UINavigationController*)[segue destinationViewController];
        YourViewController *destViewController = 
           (YourViewController* )[navController topViewController];

        destViewController.navgationItem.title = @"Your title";

    }
}

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...