首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取backBarButtonItem的标题

获取backBarButtonItem的标题
EN

Stack Overflow用户
提问于 2013-04-28 05:25:11
回答 1查看 559关注 0票数 1

我目前正在编写一个有多个用户的应用。我想在故事板中使用相同的“个人资料”视图来显示所有用户的信息。

计划是设置“配置文件”视图的标题,然后推送它。

代码语言:javascript
复制
 - (void) pushGeneralProfileViewFrom:(UIViewController *)target usernameAsTitleOfView:(NSString *)title {

    UIViewController *myView = [target.storyboard instantiateViewControllerWithIdentifier:@"GeneralProfileView"]; // created in storyboard, Feed View
    myView.title = title;
    [target.navigationController pushViewController:myView animated:YES];
}

这样做效果很好。但是,"profile“视图也有一些按钮,可以将其引导到情节提要中的其他视图。这些视图还显示相关用户的特定信息。

我计划使用backBarButtonItem的名称来了解我需要为其显示信息的用户。虽然我可以在模拟器中看到带有用户名的后退按钮,但我无法将其设置为self.navigationController.navigationItem.backBarButtonItem.titleself.navigationItem.backBarButtonItem.title。两者都返回null

我做错了什么?此外,我有一种感觉,这不是处理这类事情的最佳实践。我已经在网上搜索过了,到目前为止还没有看到一种更好的方法来将值传递给我正在推动的视图。有什么建议吗?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-28 06:24:44

当视图控制器在导航控制器界面中可见时,您看到的backBarButtonItem不是该视图控制器的backBarButtonItem。它是第二个视图控制器的backBarButtonItem,也就是堆栈中这个视图控制器后面的那个。

所以你想要的是:

代码语言:javascript
复制
UIInteger c = [self.navigationController.viewControllers count];
UIViewController* vc2 = [self.navigationController.viewControllers objectAtIndex:c-2];

现在获取该视图控制器的navigationItembackBarButtonItem。或者,如果它们是相同的,则直接获取它的title

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16257009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档