首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将UIView添加到TableViewControllers视图

将UIView添加到TableViewControllers视图
EN

Stack Overflow用户
提问于 2015-03-31 22:51:55
回答 3查看 102关注 0票数 0

我有一个TableViewController,在其中我通过编程创建了一个UIView,它是状态栏的宽度和高度,并且有一个彩色的背景。基本上,它作为状态栏的背景:

代码语言:javascript
运行
复制
let statusBarBG = UIView(frame: CGRectMake(0, 0, widthOfScreen, 20))
statusBarBG.backgroundColor = UIColor...
self.view.addSubView(statusBarBG)

但是,当我在这个状态栏背景中上下拖动时,整个表视图都会移动,如下所示(在左边,红色的更大的部分是我的导航栏的bg):

因此,我的问题是:如何在这个tableViewController中创建一个视图,这个视图更像是tableView的同级视图,而不是一个随它移动的子视图?谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-03-31 22:58:10

如何在这个tableViewController中创建一个视图,这个视图更像是tableView的同级视图,而不是一个随它移动的子视图?

不幸的是,对于tableviewcontroller来说,这是不可能的,因为tableviewcontroller的视图是一个UITableView实例,而后者又是UIScrollView的一个子类。基本上,任何你作为滚动视图的子代所放的东西都会随它滚动。

一种更好的方法是不再使用tableviewcontroller,而是使用带有嵌入式表视图的普通视图控制器。您甚至可以通过将视图控制器添加到继承结构中来重用它。

另一种(更容易)的方法是处理uitableview的滚动委托方法,并根据偏移量调整标题视图的Y位置。

票数 3
EN

Stack Overflow用户

发布于 2015-04-01 00:05:27

如果您只希望该视图表现为背景色,则只需使用图像。

代码语言:javascript
运行
复制
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navigationbar.png"] forBarMetrics:UIBarMetricsDefault];

或者使用imageWithColor如果你只想要一个颜色而不是一个自定义的图像.在你的照片里看起来你想要整个导航栏+状态栏都是红色的.这个代码是整个导航栏+状态栏的代码.如果你想要状态栏不同,只需设计一个图像并使用该代码.我不是一个迅速的人对不起,但这应该是非常相似的.

编辑:啊,您没有在导航控制器中使用那个tableView吗?那可能就没用了..。

编辑2:

这是我的形象

用这个代码

代码语言:javascript
运行
复制
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navigationbar.png"] forBarMetrics:UIBarMetricsDefault];

我得到了

如果没有,它就是干净的

票数 1
EN

Stack Overflow用户

发布于 2019-11-24 13:47:46

试试这个:

代码语言:javascript
运行
复制
    let bottomView = UIView()
    bottomView.backgroundColor = .red // or your color
    bottomView.frame = CGRect(x: 0, y: UIScreen.main.bounds.size.height - 78, width: tableView.frame.size.width, height: 78) // 78 or your size of view
    navigationController?.view.addSubview(bottomView)
    tableView.tableFooterView = UIView()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29379931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档