【问题标题】:can i add a UISwitch, UIButton and a label to customer tableview header (not section header)我可以将 UISwitch、UIButton 和标签添加到客户 tableview 标题(不是部分标题)吗
【发布时间】:2015-11-26 23:54:48
【问题描述】:

我正在尝试为 tableview(而不是部分)添加自定义标题。我看到这篇文章展示了如何做到这一点:Table Header Views in StoryBoards

我可以将UISwitchUIButtonUILabel 等控件添加到表头中的视图中,以便可以隐藏或动态更新它们吗?

我错过了重要的一点,即,即使我滚动行,我也希望此视图保持在顶部。所以这个标题总是会显示总数。如果我删除一行,总数会在屏幕上更新。还有一个按钮和开关,因此用户可以选择某些东西。如果有人能指点我一些例子,不胜感激。

我尝试添加上面 URL 中提到的视图,但是当我向下滚动表格时,UIView 消失了。

听起来我需要的是 UIView 的布局,UIViewController 中嵌入的 UITableView。请看附图。如何处理 UIViewController 子类中的 UIView 和 UITableView 的事件?

谢谢

【问题讨论】:

  • “动态”是什么意思?标题视图是一个简单的视图。
  • @Poql:我计划有一个“Total:”标签,需要根据下表中每个项目的数量进行更新。还有一个 UIbutton 需要根据应用程序是否可以访问服务器来隐藏或不隐藏。如果我继承 UIView,我可以编写处理程序方法吗?我更喜欢故事板的方式。

标签: ios uitableview uiviewcontroller uistoryboard


【解决方案1】:

是的,您可以通过情节提要或以编程方式将任何 UIView 或子类添加为 tableViewHeader:

UIView *someView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,100)];
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(10,10,300,80)];
[someView addSubview:button];
self.tableView.tableHeaderView = someView;

您的视图可以包含任何其他视图。

甚至

UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(10,10,300,80)];
self.tableView.tableHeaderView = button;

仅用于添加 UIButton。 尽管如此,您设置为 tableHeaderView 的视图将填充您周围 UITableView 的整个宽度,而高度将保持在您的框架中指定的高度。

【讨论】:

    【解决方案2】:

    是的,您可以将任何类型的视图添加到表头。在 xib 中或以编程方式创建一个包含 Switch、Button 等的视图,然后使用该视图并将其分配给 UITableView 的 tableHeaderView(可以从 UITableViewController 的 tableView 属性中引用)。

    查看示例:Adding iOS UITableView HeaderView (not section header)

    【讨论】:

      猜你喜欢
      • 2014-01-14
      • 2015-02-18
      • 2019-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-19
      相关资源
      最近更新 更多