2015-10-04 194 views
0

我加入2子视图到我的观点(EOPSessionsViewController),blurEffectViewreLogInView删除模糊搜索。从另一个子视图

if (!UIAccessibilityIsReduceTransparencyEnabled()) { 
     self.view.backgroundColor = [UIColor clearColor]; 

     UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]; 
     UIVisualEffectView *blurEffectView = [[UIVisualEffectView alloc]initWithEffect:blurEffect]; 
     blurEffectView.tag = 123; 
     blurEffectView.frame = self.view.bounds; 
     blurEffectView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 

     [self.view addSubview:blurEffectView]; 
    }else{ 
     self.view.backgroundColor = [UIColor blackColor]; 
    } 

    self.reLogInView = [[ReLoginViewController alloc]initWithNibName:@"ReLoginViewController" bundle:nil]; 

    [self.view addSubview:self.reLogInView.view]; 
    self.reLogInView.view.frame = CGRectMake(0, 0, self.view.frame.size.width/2, self.view.frame.size.height/2); 
    self.reLogInView.view.center = self.view.center; 
    self.reLogInView.view.backgroundColor = [UIColor grayColor]; 
    self.reLogInView.view.layer.borderColor = [UIColor blackColor].CGColor; 
    self.reLogInView.view.layer.borderWidth = 3.0f; 

我想删除blurEffectViewreLogInView当用户点击取消内部reLogInView按钮。截至目前,我可以使用下面的代码删除reLogInView

- (IBAction)cancel:(id)sender { 

    [self.view removeFromSuperview]; 

} 

我的问题是如何在同一时间删除blurEffectView?请注意,其中3个是不同的类。

回答

1

尝试增加这样的事情:

self.reLogInView.sessionsVC = self; 
第一代码片段

。 (声明它是这样):

@interface ReLoginViewController : (???) <???> 
... 
@property (strong) EOPSessionsViewController *sessionsVC; 

然后:

- (IBAction)cancel:(id)sender { 
    [self.view removeFromSuperview]; 
    [self.sessionsVC.blurEffectView removeFromSuperview]; 
} 
相关问题