IOS UITableView table view scroll hide UINavigationController navigation bar
UITableView inherits from UIScrollView
Therefore, the proxy method of UIScrollView is also applicable to UITableView.
To hide the navigation bar, follow these steps:
Self. navigationController. navigationBar. hidden = YES;
Therefore, we can only control the display or hiding of the navigation bar by monitoring the scroll direction of the scroll view through the rolling proxy method:
Perform the following operations by implementing the UIScrollView proxy method:
The method is as follows:
// Slide the scrollView and run it when the finger leaves. One valid slide, only once. // If the pagingEnabled attribute is YES, this method is not called.-(void) scrollViewWillEndDragging :( UIScrollView *) scrollView withVelocity :( CGPoint) velocity targetContentOffset :( inout CGPoint *) targetContentOffset {NSLog (@ % f, velocity. y); if (velocity. y> 0.0) {// slide upwards to hide the navigation bar self. navigationController. navigationBar. hidden = YES;} else {// slide down to display the self in the navigation bar. navigationController. navigationBar. hidden = NO ;}}
If you think the effect is stiff, you can manually load the animation effect!
For details about UIScrollView Delegate, refer to: iOS UIScrollViewDelegate