如何摆脱滚动视图中的水平背景栏
Posted
技术标签:
【中文标题】如何摆脱滚动视图中的水平背景栏【英文标题】:How to get rid of horizontal background bar in scroll view 【发布时间】:2014-02-27 18:19:27 【问题描述】:我正在制作一个包含三个页面的应用程序,您可以在其中滑动浏览。我在屏幕上设置了正确大小的滚动视图,但是顶部有一个蓝色背景色的实心条。我该如何摆脱这个?我的代码和图片链接发布在下面。
Click Here for Image
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * 3,
self.scrollView.frame.size.height-64);
self.scrollView.pagingEnabled=YES;
self.scrollView.backgroundColor = [UIColor blueColor];
int i = 0;
while (i<=2)
UIView *views = [[UIView alloc]
initWithFrame:CGRectMake(((self.scrollView.frame.size.width)*i)+2, 0,
(self.scrollView.frame.size.width)-3, self.scrollView.frame.size.height)];
views.backgroundColor=[UIColor whiteColor];
[views setTag:i];
[self.scrollView addSubview:views];
i++;
【问题讨论】:
【参考方案1】:这是您在滚动视图上设置背景颜色的行:
self.scrollView.backgroundColor = [UIColor blueColor];
改变那个颜色,或者去掉那条线,蓝色就会改变。除此之外,尚不清楚您要完成什么,因此可能还需要进行一些帧校正。
编辑:随着情节提要修复,这里是调整后的代码:
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * 3, self.scrollView.frame.size.height - 64);
self.scrollView.pagingEnabled=YES;
self.scrollView.backgroundColor = [UIColor blueColor];
for (int i = 0; i <= 2; i++)
CGRect frame = CGRectMake((self.scrollView.frame.size.width) * i, 0,
(self.scrollView.frame.size.width), self.scrollView.frame.size.height);
UIView *view = [[UIView alloc] initWithFrame:frame];
view.backgroundColor = [UIColor colorWithRed:i * 0.3 green:0.75 blue:0.75 alpha:1.0];
[view setTag:i];
[self.scrollView addSubview:view];
【讨论】:
我假设他设置了该颜色以查看他的视图在哪里。他的问题可能是内容的偏移。 @Adis 是的,我更新了图像以更好地显示问题,顶部有一个蓝条我想去掉。 从第一行的 contentSize 中删除 -64px 会发生什么? @Adis 蓝条还是出现了,但是我点击后在导航栏下消失了,然后有一个滚动条。 @Adis 您想要该项目的下载链接吗?以上是关于如何摆脱滚动视图中的水平背景栏的主要内容,如果未能解决你的问题,请参考以下文章
当用户在表格视图中向下滚动时,如何将 UINavigationBar 背景颜色从透明更改为红色