2013-03-16 2 views
0

Я хочу перенести приложение 20.0f вниз и поместить над ним надпись. Мое приложение поддерживает горизонтальную и вертикальную ориентацию. Я не могу понять, как установить рамку для моего ярлыка. Я знаю, что есть динамичный способ сделать это, но я не могу понять это. Я ценю небольшую помощь здесь. Как вы видите на картинке, я хочу поместить ярлык в розовую зону. Найти рамку в верхней части приложения

ответ

0

Если вы строите ваше приложение функции окно rootViewController правильно, что вид контроллер имеет UIView, его view, который занимает весь экран (за исключением строки состояния). Его начало находится в левом верхнем углу, прямо под строкой состояния. Таким образом, вы хотите, чтобы ваш ярлык находился на {0,0} в качестве подвидности вашего представления контроллера корневого представления. Не пытайтесь выставить его вне контроллера корневого представления, например. непосредственно в UIWindow; это неправильно, и вы просто смутитесь.

+0

Thanx, моя проблема была именно то, что вы сказали, я добавлял его к UIWindow. Сейчас {0,0} работает в целом. – AliBZ

0

При добавлении метки вы хотите, чтобы ее ширина была такой же, как ширина границ вида, к которой вы собираетесь добавить.

Затем, если вы не используете autoLayout, для обработки вращения вам необходимо установить свою маску авторезистирования на UIViewAutoresizingFlexibleWidth.

0
MyAppDelegate *delegate=(MyAppDelegat*)[[UIApplication sharedApplication] delegate]; 
CGRect frame=delegate.window.rootviewController.view.frame; 
frame.origin.y+=20.0f; 
delegate.window.rootviewController.view.frame=frame; 

UILabel *label=[[UILabel alloc]initWithRect:CGRectMake(0,0,width,height)]; 
[delegate.window addSubView:label]; 

Добавьте маску к автоматическому изменению этикетке с гибкой шириной flag.So что она изменяет при повороте

+0

Я проверил ваш код, но ярлык не отображается – AliBZ

Смежные вопросы