我有一个只应该水平滚动的UIScrollView。滚动视图被固定在屏幕底部。我已经设置了一个固定高度的自动布局约束。我将contentSize设置为固定大小。
但是,当我运行应用程序时,内容显示的是屏幕底部一半的内容。它将垂直滚动到大约200像素。
我有一个地图和标签固定在滚动视图上,布局看起来与我想要的完全一样,除了滚动视图的内容似乎关闭。这是我写的代码:
在我的.h文件中:
@interface MapViewController : UIViewController <UIScrollViewDelegate>在viewDidLoad中:
self.scrollView.delegate = self;
[self.scrollView setContentSize:CGSizeMake(600, 100)];
// add some content
UIView *personView = [[UIView alloc] initWithFrame:CGRectMake(0, 8, 100, self.scrollView.frame.size.height-16)];
personView.backgroundColor = [UIColor cyanColor];
UIView *personView2 = [[UIView alloc] initWithFrame:CGRectMake(110, 8, 100, self.scrollView.frame.size.height-16)];
personView2.backgroundColor = [UIColor redColor];
UIView *personView3 = [[UIView alloc] initWithFrame:CGRectMake(220, 8, 100, self.scrollView.frame.size.height-16)];
personView3.backgroundColor = [UIColor blueColor];
UIView *personView4 = [[UIView alloc] initWithFrame:CGRectMake(330, 8, 100, self.scrollView.frame.size.height-16)];
personView4.backgroundColor = [UIColor orangeColor];
[self.scrollView addSubview:personView];
[self.scrollView addSubview:personView2];
[self.scrollView addSubview:personView3];
[self.scrollView addSubview:personView4];我不经常使用UIScrollView,所以我遗漏了什么吗?有人知道尺寸问题可能来自哪里吗?
另外,我在帧高和contentSize高度上做了一个contentSize,两者都等于100。
编辑:
这个视图位于一个导航控制器中,我在第一次加载时将导航栏设置为隐藏= YES到隐含= NO。我注意到,当我将内容隐藏起来时,内容的高度是不同的,所以这肯定与它有关。
发布于 2015-10-26 19:27:29
尝试设置滚动视图的内容大小int "viewDidLayoutSubviews“方法,同时保持autolayout设置。
-(void)viewDidLayoutSubviews
{
[self.scrollView setContentSize:CGSizeMake(required_width, required_height)];
}也请检查在故事板中将导航条设置为ViewController。如果有的话,试着移除它。
如果你还面临什么问题请告诉我。
https://stackoverflow.com/questions/33353873
复制相似问题