【问题标题】:Setting the navigation item's properties with RBStoryboardLink?使用 RBStoryboardLink 设置导航项的属性?
【发布时间】:2014-04-17 03:33:07
【问题描述】:

我正在将情节提要与RBStoryboardLink 链接。当我尝试使用以下代码修改当前视图控制器的标题时,我看不到任何更改:

self.navigationItem.title = @"Foo";

我该如何解决这个问题?

【问题讨论】:

    标签: ios objective-c uiviewcontroller storyboard


    【解决方案1】:

    使用这个故事板链接解决方案,视图控制器被添加为子视图控制器。它的属性只在 segue 实际发生时被复制一次。

    例如在 SSUStoryboardLink.m 中,在 awakeFromNib 中执行以下代码:

    ...
    navItem.title = linkedNavItem.title;
    navItem.titleView = linkedNavItem.titleView;
    navItem.prompt = linkedNavItem.prompt;
    navItem.hidesBackButton = linkedNavItem.hidesBackButton;
    navItem.backBarButtonItem = linkedNavItem.backBarButtonItem;
    navItem.rightBarButtonItem = linkedNavItem.rightBarButtonItem;
    ...
    

    为了设置属性,你必须在父视图控制器上设置它们:

    self.parentViewController.navigationItem.title = @"Foo";
    

    【讨论】:

      【解决方案2】:

      你可以使用方法

      - (UIViewController *)rbsl_targetViewController
      

      这将确保您真正获得包含您的视图控制器的 RBStoryboardLink。

      所以,在你的情况下

      #import "UIViewController+RBStoryboardLink.h"
      
      self.rbsl_targetViewController.navigationItem.title = @"Foo";
      

      Here 是文档。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-08-26
        • 1970-01-01
        • 2013-04-15
        • 1970-01-01
        • 1970-01-01
        • 2013-11-30
        相关资源
        最近更新 更多