美团HD(9)-监听点击城市

DJSelectCityViewController.h

// 点击城市发出通知
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

    // 1. 发送点击的城市名
    DJCityGroup *cityGroup = self.cityGroups[indexPath.section];
    [[NSNotificationCenter defaultCenter] postNotificationName:DJCityDidChangeNotification object:nil userInfo:@{DJSelectCityName:cityGroup.cities[indexPath.row]}];

    // 2. 关闭当前controller
    [self dismissViewControllerAnimated:YES completion:nil];
    
}

DJHomeViewController.m

/** 监听到城市改变广播 */
- (void)onReceiveCityChangeNotification:(NSNotification *)notification {

    NSString *selectedCityName = notification.userInfo[DJSelectCityName];
    
    // 1. 更新当前显示地区
    DJNavItem *areaView = self.areaItem.customView;
    [areaView setTitle:[NSString stringWithFormat:@"%@ - 全部",selectedCityName]];
    
}

DJConstantValue.m

#import <Foundation/Foundation.h>


/* 通知 */
NSString *const DJCityDidChangeNotification = @"DJCityDidChangeNotification";
NSString *const DJSelectCityName = @"DJSelectCityName";
原文地址:https://www.cnblogs.com/yongdaimi/p/6403400.html