2016-04-27 20 views
0

私はSWRevealViewControllerを使用します。 私の目標は、prepareforsegueメソッドではなく、デリゲートプロトコルを使用して、正面ビューで選択したメニュー項目を処理することです。SWRevealViewController。フロントビューで選択されたmenuItemをデリゲートプロトコルで処理するにはどうすればよいですか?

たとえば、プロトコルを背面ビュークラスで使用し、正面ビューをデリゲートとして割り当て、背面ビューで選択されたメニューアイテムがデリゲートメソッドを呼び出してmenuItemタグを送信するときに使用します。

ポイントは、すでに存在しているリアビューにデリゲートとしてフロントビューを割り当てる方法がわかりません。私はフロントビューでコードにそれを割り当てることができますが、確かにこれはうまくいきません。デリゲートメソッドは呼び出されません。

いくつかの実装をお勧めしますか?

答えて

0

プロトコルデリゲートの実装がまだ見つかりませんでした。

フロントビューから選択したすべてのメニュー項目を処理する必要があります。そこから関連するすべてのウィンドウを開き、そこで結果を処理する必要があります。

私は、選択した投稿メニュー項目に対して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];  
} 

あなたは、このためのプロトコルデリゲートを使用する方法を知っている場合は私に知らせてください。

関連する問題