UITableview navbar漸變觀察者

weixin_34041003發表於2016-08-12

self.automaticallyAdjustsScrollViewInsets = NO;

[self.tableview addObserver:self forKeyPath:@"contentOffset" options:NSKeyValueObservingOptionNew context:nil];


實現

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary*)change context:(void *)context

{

CGFloat contentoffsetY = [change[@"new"] CGPointValue].y;

NSLog(@"%f",contentoffsetY);

if (contentoffsetY >0 && contentoffsetY <64) {

self.navigationController.navigationBar.alpha = 1 - ABS(contentoffsetY) /64 ;

}else if(contentoffsetY >= 64)

{

self.navigationController.navigationBar.alpha = 0.2;

}else

{

self.navigationController.navigationBar.alpha = 1;

}

}

最後記得移除觀察者,釋放記憶體

相關文章