gpt4 book ai didi

iphone - 检测在 pagingEnabled UIScrollView 中显示的是哪个 UIView

转载 作者:行者123 更新时间:2023-11-28 18:44:09 26 4
gpt4 key购买 nike

我正在使用 this tutorial 中的代码创建一个允许滚动页面的 UIScrollView。换句话说,用户可以拖动屏幕从一个 UIView 切换到另一个。代码基本上是这样的:

- (void)loadView {
[super loadView];
self.view.backgroundColor = [UIColor redColor];
UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
scroll.pagingEnabled = YES;
NSInteger numberOfViews = 3;
for (int i = 0; i < numberOfViews; i++) {
CGFloat yOrigin = i * self.view.frame.size.width;
UIView *awesomeView = [[UIView alloc] initWithFrame:CGRectMake(yOrigin, 0, self.view.frame.size.width, self.view.frame.size.height)];
awesomeView.backgroundColor = [UIColor colorWithRed:0.5/i green:0.5 blue:0.5 alpha:1];
[scroll addSubview:awesomeView];
[awesomeView release];
}
scroll.contentSize = CGSizeMake(self.view.frame.size.width * numberOfViews, self.view.frame.size.height);
[self.view addSubview:scroll];
[scroll release];
}

我的问题是如何检测用户在哪个页面上?就像第 1 页记录“1”,第 2 页记录“2”等。

谢谢!

最佳答案

您可以使用 ScrollView 的内容偏移量及其宽度来获取当前页码。

int currentPage = (scrollView.contentOffset.x / scrollView.frame.width) + 1;
NSLog(@"current page: %d", currentPage);

如果垂直滚动,您应该考虑 y 偏移量。

关于iphone - 检测在 pagingEnabled UIScrollView 中显示的是哪个 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6832542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com