Приложение UIStoryboard и общее фоновое изображение - PullRequest
1 голос
/ 13 января 2012

У меня есть приложение для iOS, которое использует UIStoryboard для управления потоком. Я хотел бы, чтобы все мои представления были определены в UIStoryboard, чтобы у всех был общий фон. Есть ли способ сделать это без добавления элемента управления UIImageView к каждому представлению?

Я попробовал это ниже, но это вызывает сбой моего приложения с ошибкой переполнения стека:

-(void)viewDidLoad
{
    [super viewDidLoad]; 
    UIImage *image = [UIImage imageNamed:@"MyBackgroundImage.png"];
    UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
    [self.view addSubview:imageView];
    [self.view sendSubviewToBack:imageView];
}

Есть ли лучший способ сделать это? Как лучше всего справиться с этим видом тем в приложениях для iOS?

Ответы [ 3 ]

5 голосов
/ 13 января 2012

Подкласс UIViewController и переопределите -viewDidLoad, чтобы создать свое изображение и установить его в качестве фона представления.Теперь создайте контроллеры представления, которым требуются подклассы фонового изображения вашего пользовательского контроллера представления вместо UIViewController.

0 голосов
/ 13 января 2012

Оказывается, код, который я разместил выше, работает отлично. Мое решение было таким же, как и предложение Марка Адамса: подкласс UIViewController, переопределить -viewDidLoad, создать и установить imageView и использовать новый подкласс в качестве моего viewController.

Я думаю, что я случайно установил для моего нового подкласса неверный элемент управления в Интерфейсном Разработчике, из-за которого мое первоначальное решение не работало правильно.

0 голосов
/ 13 января 2012

В вашем ViewDidLoad:

UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 10, 100, 50)];
imgView.image = [UIImage imageNamed:@"image.png"];
[self.view addSubview: imgView];
[self.view sendSubviewToBack:imageView];

Должен сделать свое дело.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...