如何在iOS中关闭RNBlurModalView时捕获事件

时间:2013-08-20 10:05:12

标签: ios objective-c

我使用了RNBlurModalView,但现在我想在function时调用新的RNBlurModalView 消失。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

顺便提一下,有三种方式(可能更多):

方式1:使用此方法隐藏RNBlurModalView对象并使用完成处理程序块在隐藏时调用该函数(您要调用)。

- (void)hideWithDuration:(CGFloat)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options completion:(void (^)(void))completion;

方式2 :您可以收听kRNBlurDidHidewNotification NSNotification以了解视图是否已被隐藏。

  [[NSNotificationCenter defaultCenter]addObserver:self 
                                          selector:@selector(modalViewHides:) 
                                              name:kRNBlurDidHidewNotification
                                            object:nil];

方式3:isVisible属性上使用键值观察。

[modal addObserver:self forKeyPath:@"isVisible" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:NULL];

示例:::

- (void)viewDidLoad
{
    [super viewDidLoad];
    RNBlurModalView *modal = [[RNBlurModalView alloc] initWithViewController:self title:@"Hello world!" message:@"Pur your message here."];
    [modal show];

[[NSNotificationCenter defaultCenter]addObserver:self
                                          selector:@selector(modalViewHides)
                                              name:kRNBlurDidHidewNotification
                                            object:nil];
}

- (void)modalViewHides
{
 // call your function 
}