自动分页滚动视图

Posted

技术标签:

【中文标题】自动分页滚动视图【英文标题】:Automatic paging scrollview 【发布时间】:2012-11-07 16:02:13 【问题描述】:

我有一个问题。我想在滚动视图中向用户显示一些内容。我想从左到右快速自动滚动滚动视图。我尝试使用 DDAutoscrollview(如果有人知道),但它对我不起作用。有人为我提供水平自动滚动 UIscrollview 的解决方案吗?我已经为滚动视图设置了一个页面控件,因为它使用分页。任何代码 sn-ps 都会很好。

我的代码(只是滚动视图):

.h

    @interface Interface1 : UIViewController 

    IBOutlet UIScrollView *scroller;



.m

- (void)viewDidLoad


    [scroller setScrollEnabled:YES];
    [scroller setContentSize:CGSizeMake(960, 230)];

        [super viewDidLoad];

我正在使用 Storyboards 和 ARC。

谢谢

【问题讨论】:

【参考方案1】:

您不需要为此使用任何额外的库。 UIScrollView 有一个 contentOffset 属性,您可以简单地将动画标志设置为 YES:

[myScrollView setContentOffset:CGPointMake(320, 0) animated:YES];

或者您可以将其包装在 UIView 动画中:

[UIView animateWithDuration:1.5f animations:^
    [myScrollView setContentOffset:CGPointMake(320, 0) animated:NO];
];

无论哪种方式,您都可能希望将滚动视图的 contentSize 设置为至少 640 宽,以便您可以实际翻页。

【讨论】:

我只是想让滚动视图页面向右,如果用户加载视图【参考方案2】:

您正在寻找- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated。它允许你在 contentSize 中给它一个矩形,它会滚动到它。

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIScrollView_Class/Reference/UIScrollView.html

【讨论】:

【参考方案3】:

我不知道到底有多快,但你试过这个方法吗?

- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated
// In your case, e.g.:
[scroller setContentOffset:CGPointMake(640, 0) animated:YES]

【讨论】:

以上是关于自动分页滚动视图的主要内容,如果未能解决你的问题,请参考以下文章

分页uiscrollview自动滚动到第一页

带有分页的水平滚动视图中的全宽标签

滚动其他滚动视图时滚动视图重置

如何使用图像视图制作无限分页滚动视图?

使用包含启用缩放的滚动视图的滚动视图进行分页

iOS:滚动视图和自动布局,第二个视图不扩展