0

我正在构建一个应用程序,我有一个桌面视图。现在在桌面上我想要3个按钮。当你点击这些按钮时,tableview的数据就会改变。此tableview派生自查看顶端的桌面视图

@interface MultimediaViewController : CoreDataTableViewController 

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

我现在的问题是,当我向下滚动时,我的tableview顶部的按钮消失。我可以通过在故事板中创建以下排名顺序来解决这个问题。

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

但后来我NSFetchedResultController将无法正常工作。因为我的类是从CorDataTableViewController派生的。

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

亲切的问候。

+0

为什么它不工作?我没有得到按钮和你的控制器之间的关系。 –

+0

如果你看flickr上的图片。它工作正常。但是我的观点就像是tableview中的“第一个单元格”,所以它消失了。我现在想要做的是保持在视野之上而不消失。 –

回答

0

正如我正确理解你的想法,你希望有相同的按钮具有相同的动作,但当表格垂直滚动时,它们固定在屏幕的顶部。您可以:

  1. 用新按钮准备新视图,该按钮覆盖下方的表格。
  2. 连接新的按钮行动,以旧按钮行动,使他们的行为同样

这是最快的和简单的解决方法我现在能想到的。

您感兴趣的视图嵌入为tableView.tableHeaderView。您可以创建覆盖表自己的品牌新的观点和移动的按钮:

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

那是另一个讨厌的黑客,但是这是所有我可以告诉你,不知道你的超是如何构建的。

+0

是的,但比我的tableview不会工作,因为我的超类是CoreDataTableviewController。它得到一个UIView。 –

+0

然后,您可以准备自己的视图。由于我不知道CoreDataTableviewController类,因此您需要自行调查,哪些IBOutlets需要连接才能正常工作。然后,您可以自行准备自己的视图并连接IBOutlet。 –

+0

您可以尝试将表格的标题视图移动到所需的位置。这不是建立软件的正确方法,因为您应该首先调查IBOutlets,然后将它们与您自己的全新视图联系起来。至少这应该工作。 –