【问题标题】:Let me know the functionality of this code让我知道这段代码的功能
【发布时间】:2014-06-26 18:00:28
【问题描述】:

我是 ios 的新手。我正在调试代码,我已经完成了以下几行我不理解该功能。如果有人理解,请告诉我。

- (void)prepareForSegue: (UIStoryboardSegue *) segue sender: (id) sender{

   if ( [segue isKindOfClass: [SWRevealViewControllerSegue class]] ) {

        SWRevealViewControllerSegue *swSegue = (SWRevealViewControllerSegue*) segue;
      __typeof(self) __weak weakSelf = self;

      swSegue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc){

            UINavigationController* navController = (UINavigationController*) weakSelf.revealViewController.frontViewController;
            [navController setViewControllers: @[dvc] animated: NO ];
            [weakSelf.revealViewController setFrontViewPosition: FrontViewPositionLeft animated: YES];

      };

    }

}

【问题讨论】:

  • __typeof(self) __weak weakSelf = self;它为您的控制器提供了一个弱引用,以避免保留循环。

标签: ios objective-c uinavigationcontroller swrevealviewcontroller


【解决方案1】:

您可以使用“prepareForSegue”方法推送到新的视图控制器

但是在这段代码中,在 Destination viewcontroller 的 Push 过程中,Custom segue 将代替原生动画执行

SWRevealViewControllerSegue 是自定义segue的类,可以看到推送动画代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    • 2012-10-12
    • 1970-01-01
    • 1970-01-01
    • 2019-11-09
    相关资源
    最近更新 更多