2014-09-22 3 views
0

В моем приложении много программно позиционированных CALayers, и я использую каталоги каталогов изображений для всех моих изображений. Прошлой ночью я обновился до Xcode 6, чтобы начать подготовку приложения для iPhone 6. Однако, когда я проверял симулятор, ни один из CALayers, похоже, правильно позиционирован даже в устройстве iPad Retina. Итак, мне интересно, есть ли у кого-то идея, из какой проблемы может возникнуть проблема?После обновления до Xcode 6 позиции CALayer изменились

Я делаю такие вещи, чтобы расположить слои между прочим.

-(CALayer *)loadLayer:(CGFloat)x :(CGFloat)y :(CGFloat)width :(CGFloat)height :(NSString *)layerName 
{ 

CALayer *layerToAdd = [[CALayer alloc] init]; 
[layerToAdd setBounds:CGRectMake(0, 0, width, height)]; 
[layerToAdd setPosition:CGPointMake(x + width/2, y + height/2)]; 
layerToAdd.name = layerName; 
[self.view.layer addSublayer:layerToAdd]; 
return layerToAdd; 

} 

Большое спасибо.

+0

ли вы имеете в виду Xcode 6 или IOS 8? – trojanfoe

+0

Я имею в виду Xcode 6. Мое приложение отлично работает на iOS 8. Поэтому я думаю, что проблема должна быть связана с тем, как мой проект строится в Xcode 6. На симуляторе я просматриваю его на iOS 8 но приложение должно поддерживать iOS 7 iOS 6. Мне также следует сказать, что я только пробовал это на Симуляторе. – pingin

ответ

0

Я думаю, что я проследил проблему до свойств ширины и высоты, которые теперь были переключены на нечто более интуитивно понятное. Мое приложение работает только в ландшафтном режиме и, глядя на мой код, кажется, что до Xcode 6 (или раньше?) Ширина была физической шириной устройства в портретном режиме - так что даже он работал в ландшафтном режиме, фактически упоминается высота. Так что я был в состоянии исправить большинство проблем с моим приложением, просто изменяя эти две строки:

viewWidthInPoints = bounds.size.height; 
viewHeightInPoints = bounds.size.width; 

в

viewWidthInPoints = bounds.size.width; 
viewHeightInPoints = bounds.size.height; 

Просто ответить на него здесь, в случае, если кто работает с аналогичной проблемой.

Более подробную информацию можно найти здесь: Is [UIScreen mainScreen].bounds.size becoming orientation-dependent in iOS8?

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