Question

Is there a way to create a custom view with vertical or horizontal scrolling but not both? When in portrait mode, vertical scrolling should be enabled and horizontal scrolling should be disabled When in landscape mode, horizontal scrolling is enabled and vertical scrolling is disabled.

Était-ce utile?

La solution

You can set the contentSize property of your UIScrollView depending on which orientation you are going to turn to.

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {

    if(UIInterfaceOrientationIsPortrait(toInterfaceOrientation) {
        [self.scrollView setContentSize:CGSizeMake(self.scrollView.bounds.size.width, scrollViewContentHeight)];
    } else {
        [self.scrollView setContentSize:CGSizeMake(scrollViewContentWidth, self.scrollView.bounds.size.height)];
    }
}

Autres conseils

This all depends on your UIScrollView's content size. If the content size overflows the scrollView's frame's height - you'll enable horizontal scrolling. If it exceeds the height, you'll enable vertical scrolling.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top