добавление различных табличных представлений в прокрутку, управляемую элементом управления страницей

Я добавил различные табличные представления в прокрутку, которые контролируются элементом управления страницей. Я устанавливаю их так.

- (void)loadPage:(NSInteger)page {
    if (page < 0 || page >= self.pageStages.count) {
        // If it's outside the range of what we have to display, then do nothing
        return;
    }
    // Load an individual page, first seeing if we've already loaded it
    UIView *pageView = [self.pageViews objectAtIndex:page];
    if ((NSNull*)pageView == [NSNull null]) {
        CGRect frame = self.scrollView.bounds;
        frame.size.width = 280.0f;
        frame.size.height = self.scrollView.bounds.size.height;

        frame.origin.x = (320 * page)+20;
        NSLog(@"orgin x is %d",(320 * page)+20);
        NSLog(@"orgin x is %f",frame.origin.x);
        frame.origin.y = 0;

        UITableView *table = [[UITableView alloc]initWithFrame:frame];
        table.delegate = self;
        table.dataSource = self;

        table.contentMode = UIViewContentModeScaleAspectFit;
        [self.scrollView addSubview:table];
        [self.pageViews replaceObjectAtIndex:page withObject:table];
    }
}

Все работает нормально. Добавлены представления таблиц и работает свайп. Единственная проблема в том, что координата x неверна. Каждое табличное представление должно иметь отступ в 20 пикселей с обеих сторон. Итак, чтобы получить X следующего табличного представления, я делаю это.

frame.origin.x = (320 * page)+20;

Для первого просмотра таблицы все в порядке, но когда я прокручиваю до следующего, он каждый раз идет немного левее.

Кто-нибудь может мне помочь?


person Steaphann    schedule 24.04.2013    source источник


Ответы (1)


это решено со мной, когда я устанавливаю границы таблицы, а не сам фрейм, попробуйте добавить это

[table setBounds:CGPointMake(x, y>)];
person George Hanna    schedule 24.04.2013