我试图在屏幕顶部创建一个摘要框,而在它下方则有一个表格视图。当您滚动桌面视图时,我希望它在整个框中可见但模糊,而不是像顶部的状态栏一样。
所以我创建了一个包含两个子视图的视图 - 一个用于摘要,另一个用于tableview,它可以工作。我已将摘要视图设置为透明,您可以在其后面看到表格视图。不幸的是,表格视图中的顶部单元格被遮挡了。
所以我的问题是 - 我可以添加一个垂直偏移量,以便顶部单元格从摘要框下面开始吗?
或者,有没有更好的方法来达到我想要的效果 - 当你向上和向下滚动时,一个盒子停留在桌子的顶部,并且是透明/半透明的?
答案 0 :(得分:0)
将表视图的顶部内容插入设置为浮动视图的高度:
UIEdgeInsets insets = UIEdgeInsetsZero;
insets.top = floatingView.frame.size.height;
tableView.contentInset = insets;
UITableView
从contentInset
继承UIScrollView
属性。
答案 1 :(得分:0)
我无法真正告诉你的要求,但我认为你想要一个透明的固定标题。
Rob Mayoff的方式应该工作 - 将子视图添加到tableview,并将tableview的contentInsets
设置为该子视图的高度应该是我认为你想要的。但我会建议一个替代方案 - 使用内置于UITableView控件的节头。
试试这个 - (一个具有一个部分的tableview的固定节头的非常基本的实现)
(确保您的UITableView的委托和dataSource设置为您的视图控制器)
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 100;
}
- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
UIView* view = [[UIView alloc] initWithFrame:(CGRect){0,0,320,100}];
view.backgroundColor = [UIColor blackColor];
view.alpha = 0.6;
return view;
}