0

我有一个使用页面控件的 UIscrollView。我在代码中将表格添加到滚动视图中。表格视图的每边应该有 20px 的填充。所以我做了以下。

 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 *tableStage = [[UITableView alloc]initWithFrame:frame];
        tableStage.backgroundColor = [UIColor colorWithRed:(250/255.0) green:(248/255.0) blue:(247/255.0) alpha:100];
        tableStage.delegate = self;
        tableStage.dataSource = self;
        tableStage.tag = page;

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

但我得到以下结果。 在此处输入图像描述

就像你可以看到下一个 tableview 总是向左移动一些东西。知道如何解决这个问题吗?

4

3 回答 3

1

试试这个

CGRect frame = self.scrollView.bounds;
float offset=20;
frame.size.width = frame.size.width-(2*offset);
frame.origin.x = (320 * page)+offset;
frame.origin.y = 0;
UITableView *tableStage = [[UITableView alloc]initWithFrame:frame];

并且不需要这条线

    tableStage.contentMode = UIViewContentModeScaleAspectFit;
于 2013-05-14T09:41:14.037 回答
0
CGRect frame = self.scrollView.bounds;
frame.size.width = 280.0f;
frame.size.height = self.scrollView.bounds.size.height;
frame.origin.x = (self.scrollView.bounds.size.width * page)+(self.scrollView.bounds.size.width - (frame.size.width/2));
frame.origin.y = 0;
于 2013-05-14T09:29:53.853 回答
0

如果您正确设置内容大小和每个新表格视图的位置,它将完美运行。同时启用分页。

于 2013-05-14T09:38:05.670 回答