我正在尝试根据用户在运行时选择的语言加载.xib。
要获取特定的Bundle,我使用以下代码
-(NSBundle*) getMyBundle{
NSArray *languages=[NSLocale preferredLanguages];
NSString *basePath=[[NSBundle mainBundle] pathForResource:@"Base" ofType:@"lproj"];
if(languages.count){
NSString *langKey=[languages objectAtIndex:0];
if(![util checkIfStringIsEmpty:langKey]){
NSString *path=[[NSBundle mainBundle] pathForResource:langKey ofType:@"lproj"];
if(![util checkIfStringIsEmpty:path]){
return [NSBundle bundleWithPath:path];;
}
}
}
return [NSBundle bundleWithPath:basePath];
}
-(void) loadMyController{
AViewController *controller=[[AViewController alloc] initWithNibName:@"AViewController" bundle:[self getMyBundle]];
[self.navigationController pushViewController:controller animated:YES];
}
因此,使用上面的代码.xib正确加载,但由于图像被缓存,因此不会拾取它们。
因此,任何解决此问题的解决方案都将是一个很大的帮助。