0

我实现了一个分页 UIScrollView。因此,我的滚动视图上有 5 个子视图。为了获得好的效果,我为每个子视图设置了一点偏移量,以便在第一页上,您可以在 ipad 的右侧看到第二页的一点点。其他页面上的效果相同,因此每次您在页面上时,您都会在屏幕的左侧/右侧获得一些预览。页面之间的滚动效果很好,但问题是,第一次没有加载预览。我在每个子视图上都有一个文本视图,但是在我滚动到下一页后它首先加载。所以我的预览不正确。如何进行预加载之类的操作,以便在切换到其他子视图页面之前加载它们?

感谢您的帮助,我希望我能解释清楚......安迪

预览页面加载

代码:

XIB:我有一个 UIScrollView,大小 750、700。我的 Customview 是 700,700。

resultScrollView.clipsToBounds = NO;
resultScrollView.pagingEnabled = YES;
resultScrollView.showsHorizontalScrollIndicator = YES;

[resultScrollView addSubview:[self createCustomSubView:0.0f :VIEW_OFFSET_BETWEEN :VIEW_WIDTH :VIEW_HEIGHT]];
[resultScrollView addSubview:[self createCustomSubView.frame.size.width :VIEW_OFFSET_BETWEEN :VIEW_WIDTH :VIEW_HEIGHT]];
[resultScrollView addSubview:[self createCustomSubView:2*resultScrollView.frame.size.width :VIEW_OFFSET_BETWEEN :VIEW_WIDTH :VIEW_HEIGHT]];
[resultScrollView addSubview:[self createCustomSubView:3*resultScrollView.frame.size.width :VIEW_OFFSET_BETWEEN :VIEW_WIDTH :VIEW_HEIGHT]];
[resultScrollView addSubview:[self createCustomSubView:4*resultScrollView.frame.size.width :VIEW_OFFSET_BETWEEN :VIEW_WIDTH :VIEW_HEIGHT]];

resultScrollView.contentSize = CGSizeMake(5*resultScrollView.frame.size.width+5*VIEW_OFFSET_BETWEEN, resultScrollView.frame.size.height);

方法:

CGRect frame = CGRectMake(contentOffset + betweenOffset, 0.0f, width, height);
NSArray *subviewArray = [[NSBundle mainBundle] loadNibNamed:@"CustomSubview" owner:self options:nil];
CustomSubview *customSubView = [subviewArray objectAtIndex:0];
CustomSubview.frame = frame;
CustomSubview.contentMode = UIViewContentModeCenter;
CustomSubview.contentSize = CGSizeMake(VIEW_SCROLLABLE_CONTENT_WIDTH, VIEW_SCROLLABLE_CONTENT_HEIGHT);
4

0 回答 0