Ios UIScrollView在显示时更改其高度

Ios UIScrollView在显示时更改其高度,ios,objective-c,uitableview,uiscrollview,Ios,Objective C,Uitableview,Uiscrollview,我在Interface Builder中创建了一个UIScrollView。在该滚动视图中,我以编程方式添加UITableView。我使用Autolayout固定了scrollview的高度和宽度,并以编程方式设置其内容大小。我认为滚动视图在显示时不应该改变它的实际高度,但它看起来很小。当我记录scrollview的高度时,它给出了128。但它不应该这样做 代码如下: self.tableScrollView.contentSize=CGSizeMake(([UIScreen mainS

我在Interface Builder中创建了一个UIScrollView。在该滚动视图中,我以编程方式添加UITableView。我使用Autolayout固定了scrollview的高度和宽度,并以编程方式设置其内容大小。我认为滚动视图在显示时不应该改变它的实际高度,但它看起来很小。当我记录scrollview的高度时,它给出了128。但它不应该这样做

代码如下:

    self.tableScrollView.contentSize=CGSizeMake(([UIScreen mainScreen].bounds.size.width)*(totalpages),self.tableScrollView.frame.size.height);
[self.tableScrollView setDelegate:self];
for(int i=0;i<totalpages;i++)
{
    NSLog(@"scroll view %f",self.tableScrollView.frame.size.height);
    CGRect tableFrame = CGRectMake((([UIScreen mainScreen].bounds.size.width)*i),0,([UIScreen mainScreen].bounds.size.width),self.tableScrollView.frame.size.height);
    UITableView *tableView = [[UITableView alloc]init];
    tableView.frame=tableFrame;
    tableView.delegate = self;
    tableView.dataSource = self;
    tableView.tag=i;
    tableView.userInteractionEnabled=YES;
    //tableView.layoutMargins = UIEdgeInsetsZero;
    //tableView.preservesSuperviewLayoutMargins=NO;
    //ELIMINATE THE EXTRA SEPARATOR LINES AT THE END OF THE TABLEVIEW
    //[tableView setTableFooterView:[UIView new]];
    [self.tableScrollView addSubview:tableView];
}
self.tableScrollView.contentSize=CGSizeMake(([UIScreen mainScreen].bounds.size.width)*(totalpages),self.tableScrollView.frame.size.height);
[self.tableScrollView setDelegate:self];

对于(int i=0;我在您的滚动视图中是否有表视图以外的其他元素?@Mr.T不,只有表视图。我正在尝试水平进入表视图。如果它只是表视图,您是否使用另一个滚动视图?水平滚动表视图?它不仅仅是一个表视图。表视图的数量取决于条件。它正在变为scrolled,一切正常。唯一的问题是scrollview应该至少显示400高,但它看起来很小。这与水平滚动无关。您不应该将UITableView添加到UIScrollView,因为它已经是UIScrollView的一个子类。您能澄清一下“TableView的数量”是什么意思吗?通常只有一个tablev每个屏幕都需要视图,如果需要对内容进行不同分组,则使用多个部分。