1 在父控制器中 viewDidLoad 添加 语言通知
//开启对语言更改的监听
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(receiveLanguageChangedNotification:) name:kNotificationLanguageChanged object:nil];
2 实现方法
- (void) receiveLanguageChangedNotification:(NSNotification *) notification
{
if ([notification.name isEqualToString:kNotificationLanguageChanged])
{
[self refreshUI];
}
}
3 在切换语言的地方 抛出通知
/这个版本先不做语言选择 /
TTCustomLanguageView *pickView = [[TTCustomLanguageView alloc]initWithFrame:self.view.bounds];
pickView.languageComplate = ^(id object){
LJLanguage *item = object;
if(![item.cname isEqualToString:@”“] || item.cname){
HJSettingGroup *group = self.settingGroups[0];
HJSettingItem *tmp=group.items[2];
tmp.right = XFLOCALIZATION(item.cname);
if ([[XFLanguageManage sharedInstance] setLanguage:[TTSettingTool matchLanguageWithId:item.iid]])
{
[TTSettingTool saveLanguageID:item.iid];
[[NSNotificationCenter defaultCenter] postNotificationName:kChangeSettingNotification
object:nil];
Log(@"设置语言成功");
}
}
};
[pickView showLanguagePicker];