From 1c3327b03d93e9970aa22c8f4568daa08bdf6670 Mon Sep 17 00:00:00 2001 From: krizpoon Date: Thu, 18 Aug 2016 00:47:04 +0800 Subject: [PATCH] kvo cleanup --- Pod/Classes/OAStackView+Hiding.m | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Pod/Classes/OAStackView+Hiding.m b/Pod/Classes/OAStackView+Hiding.m index f64467a..f60d2af 100644 --- a/Pod/Classes/OAStackView+Hiding.m +++ b/Pod/Classes/OAStackView+Hiding.m @@ -20,7 +20,11 @@ - (void)addObserverForView:(UIView*)view { } - (void)removeObserverForView:(UIView*)view { - [view removeObserver:self forKeyPath:@"hidden"]; + @try { + [view removeObserver:self forKeyPath:@"hidden"]; + } @catch (NSException * e) { + NSLog(@"OAStackView: Unable to remove observer for view %@: %@", view, e); + } } - (void)addObserverForViews:(NSArray*)views { @@ -63,4 +67,10 @@ - (void)willRemoveSubview:(UIView *)subview { [self removeObserverForView:subview]; } +#pragma mark clean up + +- (void)dealloc { + [self removeObserverForViews:self.subviews]; +} + @end