Работает ли приложение ~ iPad для портретного режима?
Это не для меня.Вам также нужно указать ~ iPhone, чтобы заставить его работать?
Я получил отдельное изображение для iPad, выполнив
- (void)customizeAppearance {
if ([[UINavigationBar class]respondsToSelector:@selector(appearance)]) {
// Create resizable images for iphone
UIImage *navbarImage44 = [[UIImage imageNamed:@"navbar_bg_portrait"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
UIImage *navbarImage32 = [[UIImage imageNamed:@"navbar_bg_landscape"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
// Overide for iPad
// In theory navbar_bg_landscape~iPad should work
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
//use iPad specific image extending last pixel for landscape mode
navbarImage44 = [[UIImage imageNamed:@"navbar_bg_portrait~iPad"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 767, 0, 0)];
}
// Set the background image for *all* UINavigationBars
[[UINavigationBar appearance] setBackgroundImage:navbarImage44
forBarMetrics:UIBarMetricsDefault];
// Never called on iPad, used for landscape on iPhone
[[UINavigationBar appearance] setBackgroundImage:navbarImage32
forBarMetrics:UIBarMetricsLandscapePhone];
}
}
Но для ландшафтного режима он использует портретное изображение иповторяет последний пиксельный столбец, чтобы завершить пропущенную часть, так что это не подходит для вашей проблемы, хотя это может быть полезно для других читателей.