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];
}
如果您知道如何为此使用协议委托,请告诉我。
我使用 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];
}
如果您知道如何为此使用协议委托,请告诉我。