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

我怎样才能做到这一点?

最佳答案

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

方式1:使用此方法隐藏您的RNBlurModalView对象,并使用Completion Handler块在隐藏该函数时调用您要调用的函数。

- (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
}

10-08 14:26