C.Johns
C.Johns

Reputation: 10245

UIView Change inside navigationview

I am working off the base navigation template which has a master-view holding the navbar etc and finally loads a view inside it when the app is built.

I am wondering how to make it so the user can navigate several views inside this master view without adding anything to the navigation stack like you normally would when changing views inside a navigator app.

The way I plan to transition these views will be with a swipe gesture..

any help would be greatly appreciated, hopefully I have explained my problem well enough as its quite a hard thing to explain.

Upvotes: 1

Views: 69

Answers (1)

Andy Obusek
Andy Obusek

Reputation: 12832

I'd go about this using a UIScrollView with pagination.

But in the case that doesn't work for you, try this:

- (void) swipedScreen:(id) sender {
    //I'll leave getNewView to you to implement based on how you want to get the new view
    UIView *newView = [self getNewView];
    self.view = newView;
}

- (void) setupSwipeGestureRecognizer {
    UISwipeGestureRecognizer *swipeGesture = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipedScreen:)] autorelease];
    swipeGesture.direction = (UISwipeGestureRecognizerDirectionUp|UISwipeGestureRecognizerDirectionDown);
    [window addGestureRecognizer:swipeGesture];
}

- (void) viewDidLoad {
    [self setupSwipeGestureRecognizer];
}

And don't forget to remove the gesture recognizer wherever you feel appropriate.

Upvotes: 1

Related Questions