[英]Moving subviews in ScrollView
所以我有一個滾動視圖,其他3個視圖作為子視圖。 使用滾動視圖在3個子視圖之間分頁,這些子視圖的控制器存儲在數組中。
- (void)viewDidLoad
{
[self loadData];
self.uiScrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];
[self.uiScrollView setPagingEnabled:YES];
[self.uiScrollView setContentSize:CGSizeMake(self.view.frame.size.width*3, self.view.frame.size.height)];
self.uiScrollView.delegate = self;
[self.view addSubview:self.uiScrollView];
self.uiPhotoCollectionViewControllers = [[NSMutableArray alloc] init];
int numberOfOtherViews = 3;
int subViewOffset = 0;
for (int i = 0; i < numberOfCollectionViews; i++)
{
UIViewController* uiViewController = [[UIPhotoCollectionViewController alloc] initWithData:dataArray];
// add offset to the view of the controller
[self.uiScrollView addSubview:uiViewController.view];
[self.uiViewControllers addObject:uiViewController];
uiViewController.view.frame = CGRectOffset(uiViewController.view.frame,subViewOffset,0.0f);
subViewOffset = subViewOffset + uiViewController.view.frame.size.width;
}
如果以后我想用第一個在滾動視圖的中間切換視圖,我將如何處理而又不刪除所有滾動視圖子視圖並替換它們。
不進行替換就無法實現,但是您可以通過像這樣交換self.uiViewControllers數組中的對象來實現
[scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
然后,在交換對象之后,您可以遍歷整個數組來添加子視圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.