Gestures can be basically be added to any UIView using the addGesture:(UIGestureRecognizer *)gesture method.
Basically, you need to instantiate a UISwipeGestureRecognizer object, set whatever properties you want and implement its delegate. Then, simply add it to the view on which you wish the UISwipeGestureRecognizer to be recognized.
So for instance, since UINavigationBar inherits from UIView, you can send the addGesture:(UIGestureRecognizer *)gesture message to it like so:
UINavigationBar *myNavigationBar = [UINavigationBar new];
[self.view addView:myNavigationBar]; // 'self' refers to your view controller assuming this is where your code lives
UISwipeGestureRecognizer *swipeGesture = [UISwipeGestureRecognizer new]; // use the designated initializer method instead
[myNavigationBar addGesture:swipeGesture]; // again, this method is inherited from UIView, it's how you add gestures to views
[myNavigationBar setUserInteractionEnabled:YES]; // this is very important for enabling gestures
There you go.
Keep in mind this is kind of half the work because you want to implement animation to make it look like you're swiping a page and it moves as you are swiping.