好的,所以我的问题听起来很愚蠢,因为坦率地说,确实如此。所以我正在使用的程序员决定将UITablViewController放在UIView中。问题是这是在整个应用程序中完成的,并且它已经在实施过程中相当远。我将刷新控件放到UITableviewController中,如下所示:
[self.categoryList addSubview:self.refreshControl];
所以这里我的问题开始折叠了。如果没有下面的逻辑,UITableView会在下方移动(刷新控件完全可见)。但是,如果我不使用这段代码,我会遇到一个尴尬的差距:(但要强调的是,如果没有这种逻辑,刷新控制就完全可见了。)
if([[UIDevice currentDevice].systemVersion floatValue]>=7.0)
[self.categoryList setFrame:CGRectMake(0, -18, 320, self.categoryList.frame.size.height+35)];
没有代码的尴尬差距:
//////////////////
RefreshControl Works
/////////////////
但这就是问题所在。此逻辑使刷新控件隐藏在导航栏后面。我意识到使用UITableviewController可以自然地解决这个问题。但是,既然我们已经在这个应用程序中使用了UIViewcontroller,我认为最好的举措就是坚持我们得到的东西。那么,如果没有隐藏在导航栏后面的刷新控件,我将如何恰当地定位这个UITableView列表?希望我能清楚地为每个人解释我的问题。
答案 0 :(得分:1)
听起来你遇到了UIScrollView
遇到的问题。不幸的是,当UIScrollView
被放置使其最接近NavigationBar
时,这是一个错误。它会自动将滚动视图插入UINavBar
的高度。因此,我发现的唯一真正解决方案是:
[myView setContentInset:UIEdgeInsetsMake(-self.navigationController.navigationBar.frame.size.height, 0, 0, 0)];