开发者

how to paginate UIScrollView with different page sizes?

I'm trying to do a horizontal scroll of UILabels with different widths.

I've already put all labels next to开发者_运维技巧 each other inside the UIScrollView, but since the page scrolling, bouncing and snapping is done in scrollview.frame.width "steps", i cannot set it to work as I'd wish.

Can this be done? Thank you so much :)


What happens if you set the size of your width property to be the width of the next label? Something like (in your scroll view delegate) :

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate {
    // Get the label that's going to slide into view
    UIView *label = [self getCurrentLabel];

    // Get it's width
    float width = [label frame].size.width;

    // Set our size
    CGRect frame = [scrollView frame];
    frame.size.width = width;
    [scrollView setFrame:frame];
}

PS I've not tried this so it might just fail horribly!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜