Подтвердить что ты не робот

Отправка представления назад

Когда я пытаюсь отправить представление назад, он скрывает некоторые из кнопок и меток в моем контроллере представления. Представление, которое я отправляю обратно, представляет собой UIImageView. Кто-нибудь имеет мнение о том, что может быть проблемой?


Вот код, который я использую:

UIImage *image = [UIImage imageNamed: @"background.jpg"];
UIImageView *backImage = [[UIImageView alloc] initWithImage: image];
[self.view addSubview: backImage];
[self.view sendSubviewToBack: backImage];

Затем, когда я добавляю элементы управления в self.view, они не всегда показывают


Мне удалось получить это, переместив мой код из init в loadView. Я не понимаю, почему это должно иметь значение, но эй.. это работает!

4b9b3361

Ответ 1

Если вы используете UIView sendSubviewToBack: или подобное сообщение, вероятно, ваши кнопки будут вставлены в иерархию под UIImageView. Когда представление перемещается в иерархии, все его подпункты перемещаются вместе с ним.

Чтобы исправить это, вам нужно добавить свои элементы управления в виде подсмотров одного и того же представления (возможно, UIWindow), с которого вы сначала добавили UIImageView.

Не видя своего кода, очень сложно быть более точным.

Ответ 2

Не добавляя его программно и настраивая представления, гораздо проще сложить каждый из них в построителе интерфейса. Убедитесь, что изображение, если оно установлено в качестве фона, убедитесь, что оно будет первым.

Ответ 3

Согласен. Не совсем уверен в том, что вы подразумеваете под "отправкой на спину", но здесь есть предположение...

Если вы корректируете слои в своем основном представлении, убедитесь, что вы не отправляете представление "назад" (сменяете его слой), в котором есть количество подзаголовков... или все они будут идти назад ( их слоирование будет меняться) в то же время.

Если это не то, что вы имели в виду, просто дайте мне знать, и я удалю этот ответ.