在tableview顶部的视图

时间:2012-10-31 11:21:40

标签: objective-c uitableview core-data uiviewcontroller nsfetchedresultscontroller

我正在构建一个我有桌面视图的应用程序。现在在桌面视图之上我想要3个按钮。当您单击这些按钮时,tableview的数据会发生变化。此表视图源自

@interface MultimediaViewController : CoreDataTableViewController

这是使用NSFetchedResultController。目前我的故事板看起来像this

我现在遇到的问题是当我向下滚动时,我桌面上的按钮消失了。我可以通过在我的故事板中按照以下顺序排列来解决这个问题。

  • 查看
    • 的TableView
    • 按钮1
    • 按钮2

但是我的NSFetchedResultController不起作用。因为我的类是从CorDataTableViewController派生的。

任何人都可以帮我解决这个恼人的问题。如果您需要更多细节,请询问。

亲切的问候。

1 个答案:

答案 0 :(得分:0)

正如我所理解的那样,您希望使用相同的操作来使用相同的按钮,但是当桌面垂直滚动时,它们会固定在屏幕顶部。你可以:

  1. 使用新按钮准备新视图,其中包含下面的表格。
  2. 将新按钮操作连接到旧按钮操作,使其行为相同
  3. 这是我现在能想到的最快最简单的解决方法。

    您感兴趣的视图嵌入为tableView.tableHeaderView。您可以创建覆盖表格的自己的全新视图并移动按钮:

    UIView *buttonsView = mainTableView.tableHeaderView;
    [buttonsView removeFromSuperView];
    [myOwnBrandNewOverlayView addSubview: buttonsView];
    

    这是另一个令人讨厌的黑客攻击,但这是我能告诉你的,而不知道你的超类是如何构建的。