Добавление подпредставления ведет себя по-разному в специальной рассылке - PullRequest
2 голосов
/ 13 марта 2012

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

Я добавляю это представление так:

MyAppDelegate *appDelegate = (MyAppDelegate *)app.delegate;
[appDelegate.window addSubview:http.progressView.view];

Когда я запускаю его на симуляторе или на устройстве, все работает хорошо: черный экран перекрывает все остальное, как и ожидалось.

Странная часть заключается в следующем: я архивирую приложение, упаковываю его в виде файла .ipa, а затем устанавливаю его на телефон с помощью itunes (или TestFlight). Когда я делаю это, в некоторых местах черный оверлей смещается в верхний правый угол экрана примерно на 10 пикселей, например, frame.origin.x будет 10, а frame.origin.y будет -10.

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

1 Ответ

4 голосов
/ 13 марта 2012

Разница в том, что он будет построен с настройками релиза во время архива (например, уровень оптимизации s обычно против уровня оптимизации 0 для отладки).

Вы не устанавливаете фреймhttp.progressView.view, что, вероятно, вызывает проблемы.Установите applicationFrame окна UIScreen:

http.progressView.view.frame = appDelegate.window.screen.applicationFrame;
...