#objective-c #ios #uinavigationcontroller #uiscrollview #uistatusbar
#objective-c #iOS #uinavigationcontroller #uiscrollview #uistatusbar
Вопрос:
Я создаю полноэкранный просмотр изображения с возможностью масштабирования и прокрутки, аналогичный тому, что есть в Twitter для iPhone. У меня это почти то же самое, за исключением того, что я не могу понять, как использовать недвижимость под панелью статистики.
Я начинаю с UINavigationController и нажимаю на просмотр изображения. Мой вид изображения — это UIView, который содержит UIScrollView с рамкой (0, -44, 320, 480), чтобы поместить его под панель навигации, и UIImageView поверх нее с рамкой границ вида прокрутки.
Я скрываю панель навигации и строку состояния, используя:
[self.navigationController.navigationBar setAlpha:0.0f];
[[UIApplication sharedApplication] setStatusBarHidden:YES];
Они скрываются правильно, но вверху у меня остается 20 пикселей черного цвета. Я попытался установить для y-начала координат рамки прокрутки значение -66, но это не помогло.
Есть идеи?
Комментарии:
1. Просто предложение, но вы пробовали установить строку состояния на черный прозрачный?
2. Попытался установить для него значение transparent, но ничего не изменилось.
Ответ №1:
если вы выберете вид в построителе интерфейсов и перейдете в инспектор атрибутов, убедитесь, что для этих полос установлено значение none.
Комментарии:
1. это должно быть легко исправимо в IB. но этот комментарий не помог alavoil, поэтому я не уверен, если вы хотите опубликовать свой проект где-нибудь, я посмотрю, но кроме моего оригинального комментария, что еще можно предложить, не видя проект (или, по крайней мере, упрощенную версию (чтобы скрыть код, который вы не хотите публиковать))
Ответ №2:
Попробуйте этот метод, чтобы скрыть строку состояния
-(BOOL)prefersStatusBarHidden{
return YES;
}
Также в методе viewWillAppear() установите панель навигации скрытой :
-(void) viewWillAppear:(BOOL)animated{
[self.navigationController setNavigationBarHidden:YES];
}