【问题标题】:iPad refresh Master data from detail view.iPad 从详细视图刷新主数据。
【发布时间】:2011-07-31 00:06:48
【问题描述】:

我希望能够根据在我的详细视图控制器中执行的操作刷新应用程序主端的表格。

在这种情况下,我在左侧(主)侧有一个订单表,该表向下钻取以显示 3 个级别的订单:未结、持有和已发送。因此,如果我“更改”订单的状态(将其搁置、解除搁置、发送等),我希望能够在主控端反映这一点。有任何想法吗?

从我尝试过的详细视图控制器中的操作按钮:

1.

[[appDelegate.splitViewController.viewControllers objectAtIndex:0] reload];

2.

OrdersRootController *orc = [[OrdersRootController alloc] initWithNibName:@"Orders" bundle:nil];
orc = [appDelegate.splitViewController.viewControllers objectAtIndex:0];
[orc.tableView reloadData];

编辑:

我尝试添加通知,但它不起作用:

我一定错过了什么。 . .

我在 awakeFromNib 中添加了一个观察者:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshOrders:) name:@"OrderStatusChanged" object:odc];

并从订单中发布:

[[NSNotificationCenter defaultCenter] postNotificationName:@"OrderStatusChanged" object:self];`

但指定的选择器永远不会触发。 . .我错过了什么?

【问题讨论】:

    标签: xcode ipad uisplitviewcontroller detailsview master


    【解决方案1】:

    虽然你已经选择了答案.. 在 DetailView 中的任何位置调用它:

    UINavigationController *navController = self.splitViewController.viewControllers[0];
    MasterViewController *controller = (MasterViewController *)navController.topViewController;
    

    【讨论】:

      【解决方案2】:

      我会将明细视图中的表视图的引用(可能在 AppDelegate 中)传递给主视图,并直接调用表重新加载数据。

      或者您可以使用通知,主视图发出通知,详细视图通过加载适当的数据进行响应。

      【讨论】:

      • 想到了一个通知。没怎么用过。我会调查的。 . .
      • 它们使用起来相当简单,您可以在字典中传递自定义用户数据,非常方便。
      • 我一定错过了什么。 . .
      • 我一定错过了什么。 . .我在 awakeFromNib 中添加了一个观察者:[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshOrders:) name:@"OrderStatusChanged" object:odc]; 并从订单中发布:[[NSNotificationCenter defaultCenter] postNotificationName:@"OrderStatusChanged" object:self]; 但指定的选择器永远不会触发。 . .我错过了什么?
      • 哈!将通知观察者移动到 viewDidLoad ,它就像一个冠军!谢谢! @Devraj
      【解决方案3】:

      如果您使用的是默认拆分视图控制器,您可以这样做

      [self.rootViewController.tableView reloadData];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-10-16
        • 2014-01-07
        • 2012-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-27
        • 1970-01-01
        相关资源
        最近更新 更多