С некоторой помощью на этот вопрос я разобрался, как это сделать.По сути, viewController в moreNavigationController представляет собой один TableView, поэтому добавление фонового изображения не будет работать.Мне нужно было создать новое представление, добавить фоновое изображение, а затем добавить представление moreNavigationController поверх этого.Я сделал это, переопределив viewDidLoad в подклассе UITabBarController, но я ожидаю, что это может быть сделано и в другом месте.
- (void)viewDidLoad {
[super viewDidLoad];
UINavigationController *moreController = self.moreNavigationController;
if ([moreController.topViewController.view isKindOfClass:[UITableView class]]) {
UIView* newView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,367)];
UIImageView* imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background3.png"]];
imageView.opaque = NO;
imageView.alpha = 0.4;
[newView addSubview:imageView];
moreController.topViewController.view.backgroundColor = [UIColor clearColor];
moreController.topViewController.view.frame = CGRectMake(0,0,320,367);
[newView addSubview:moreController.topViewController.view];
moreController.topViewController.view = newView;
}
}
Возможно, вы могли бы быть умнее с размерами кадров и т. Д., Но это работает для меня.Надеюсь, это поможет кому-то еще.