【发布时间】: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