【问题标题】:How to add UIView on top of UITableView如何在 UITableView 之上添加 UIView
【发布时间】:2016-10-29 06:31:07
【问题描述】:

我的 viewController 类中有一个表

点击一个按钮(这个按钮在表格之外),我想在 tableView 上单独显示一些 UIView 并发送一个 Web 服务请求。收到回复后,我想删除我添加的 UIView。

tableView.addSubview(myview) 对我不起作用,但self.view.addSubview(myview) 起作用,但我只想将我的 UIView 覆盖在表格视图的顶部。

我的问题是关于如何向表格视图添加/删除子视图。我怎样才能做到这一点?

【问题讨论】:

  • 您可以将该视图添加为 tableview 的标题视图。
  • self.tableView.tableHeaderView = myview;
  • 我不认为他们正在寻找标题视图,因为这不会在表格的顶部。只是开头的一小部分。
  • @Greg 在发送网络请求时,他/她可以显示隐藏视图作为标题视图的子视图。或者他/她必须在 self.view 中添加子视图,并且可能需要bringSubViewToFront。
  • 只需在主视图上添加“YourView”后添加代码 [self.view bringSubViewToFront: YourView]。

标签: ios swift uitableview uiview addsubview


【解决方案1】:

如果您使用UINavigationController 将表作为其视图控制器之一,我发现最简单的方法是将其直接插入UITableView 上方。当您点击按钮以显示视图时,可以在您的 UITableViewController 中调用此代码:

 [self.navigationController.view addSubview:<your UIView>];

【讨论】:

    【解决方案2】:

    尝试这样在顶部添加标题

    let headerView = UIView(frame: CGRect(x: XXX, y: YYY, width: XXX, height: YYY))
    let imageView = UIImageView(frame: CGRect(x: XXX, y: YYY, width: XXX, height: YYY))
    headerView.addSubview(imageView)
    let labelView = UILabel(frame: CGRect(x: XXX, y: YYY, width: XXX, height: YYY))
    headerView.addSubview(labelView)
    self.tableView.tableHeaderView = headerView
    

    它会在 UITableView 上添加标题

    【讨论】:

    • @ixany 欢迎... :)
    猜你喜欢
    • 1970-01-01
    • 2018-11-06
    • 2016-02-04
    • 2017-01-16
    • 2016-05-16
    • 2019-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多