在过去的几天里,我为此感到越来越头疼。我正在尝试将一些 UITableViews 添加到滚动视图中,并通过相应的表进行翻页(例如 twitter 的应用程序)。我对屏幕的框架使用宏,这样我就可以兼容 3.5 和 4 英寸的屏幕:
#define screen_x 0
#define screen_y 0
#define screen_width [[UIScreen mainScreen] bounds].size.width
#define screen_height self.view.bounds.size.height
#define screen_frame CGRectMake(screen_x, screen_y, screen_width, screen_height)
我制作了一个 UIScrollView 的实例,如下所示:
scroll_view = [[UIScrollView alloc] initWithFrame:screen_frame];
scroll_view.backgroundColor = [UIColor clearColor];
scroll_view.contentSize = CGSizeMake(screen_width * 3, screen_height);
scroll_view.bounds = screen_frame;
scroll_view.maximumZoomScale = 1.0;
scroll_view.minimumZoomScale = 1.0;
scroll_view.delegate = self;
scroll_view.bounces = false;
scroll_view.scrollsToTop = NO;
scroll_view.clipsToBounds = true;
scroll_view.pagingEnabled = true;
[self.view addSubview:scroll_view];
我创建一个实例并像这样初始化一个表:
table = [[example_table_view alloc] init_with_frame:CGRectMake(screen_width, 0, screen_width, screen_height) and_array:[information objectForKey:@"information"]];
table.clipsToBounds = true; //attempt to solve
table.bounds = broadcasts_table.frame; //attempt to solve
table.contentSize = scroll_view.contentSize; //attempt to solve
[scroll_view addSubview:table];
问题是,虽然从宏来看,滚动视图的框架和边界似乎是正确的,但表格坚持存在(垂直)在滚动视图之外,部分被 UINavigationBar 和 UITabBar 隐藏(重要的是要注意我同时使用两者在我的应用程序中)。
如果有人看到我做错了什么,我会非常感激。谢谢!