2013-05-10 5 views
0

Я пытаюсь создать прокрутку и добавить к ней 2 xib-экрана (SVPage1.xib и SVPage2.xib), чтобы я мог перелистывать оба экрана.UIScrollView/Добавление xibs к нему

Я создал объект прокрутки и объекта Page Control.

Это то, что я имею в .m файл:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    NSArray *subviewArray = [[NSBundle mainBundle] loadNibNamed:@"SVPage1" owner:self options:nil]; 
    UIView *mainView = [subviewArray objectAtIndex:0]; 
    [self.scrollView addSubview:mainView]; 

    CGRect frame; 
    frame.origin.x = self.scrollView.frame.size.width * 2; 
    frame.origin.y = 0; 
    frame.size = self.scrollView.frame.size; 

    NSArray *subviewArray2 = [[NSBundle mainBundle] loadNibNamed:@"SVPage2" owner:self options:nil]; 
    UIView *mainView2 = [subviewArray2 objectAtIndex:0]; 
    [self.scrollView addSubview:mainView2]; 

    //Set the content size of our scrollview according to the total width of our imageView objects. 
    scrollView.contentSize = CGSizeMake(mainView.frame.size.width * 3, mainView2.frame.size.height); 
} 

#pragma mark - UIScrollView Delegate 
- (void)scrollViewDidScroll:(UIScrollView *)sender 
{ 
    // Update the page when more than 50% of the previous/next page is visible 
    CGFloat pageWidth = self.scrollView.frame.size.width; 
    int page = floor((self.scrollView.contentOffset.x - pageWidth/2)/pageWidth) + 1; 
    self.pageControl.currentPage = page; 
} 

Я считаю, что, когда я загружаю второй файл XIb я загрузить его на первый.

Когда я запускаю программу, я вижу второй файл xib на экране, и когда я перелистываю другие страницы, они пусты. Я думаю, что я делаю что-то ужасно неправильно, пытаясь добавить второй .xib ...

Любые идеи?

ответ

1

В принципе, когда вы создаете представление, его начало установлено на (0, 0). Я думаю, вы просто забываете установить исходную точку кадра второго вида на свою переменную

mainView2.frame = frame; 
+0

В принципе, вы правы :) Спасибо! – Darko

Смежные вопросы