SWRevealViewController。如何处理委托协议在前视图中选择的 menuItem?

SWRevealViewController. How can I handle menuItem selected in front view by delegate protocol?

我使用 SWRevealViewController。 我的目标是通过委托协议处理前视图中选定的菜单项 - 而不是通过 prepareforsegue 方法。

例如,我想在后视图中使用协议 class,将前视图指定为委托,当在后视图中选择任何菜单项时,我将调用委托方法并发送 menuItem 标签.

关键是我不知道如何将前视图作为委托分配给已经存在的后视图。我可以在前视图的代码中分配它——但肯定这是行不通的。未调用委托方法。

能否请您提出一些实施建议?

尚未找到带有协议委托的实现。

我需要处理从前视图中选择的所有菜单项 - 因为我从那里打开所有相关 windows 并在那里处理结果。

所以我只找到了通过 NSNotificationCenter 发布所选菜单项的实现。

这是后视图中的代码示例(我使用 tableView 作为菜单视图):

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *selectedCell=[tableView cellForRowAtIndexPath:indexPath];
    NSNumber *menuItemTag = [NSNumber numberWithInteger:selectedCell.tag];
    [[NSNotificationCenter defaultCenter] postNotificationName:MENU_ITEM_SELECTED_NOTIFICATION_KEY object:menuItemTag];

    // close menu
    [self.revealViewController revealToggleAnimated:YES];    
}

如果您知道如何为此使用协议委托,请告诉我。