2013-05-08 2 views
2

Пытается поддерживать Landscape orientation, а вот код чертежа. Примечание: aCell является объектом UIControl класса: -Поддержка ориентации ландшафта в круг UIVIEWS:

- (void)layoutCells 
{ 
    for (UIView *aCell in _cells){ 
    if ([aCell superview] != self) 
     [self addSubview:aCell]; 

    int height = [[UIScreen mainScreen] bounds].size.height; 
    if (height >= 568)// iPHone 5 
    { 
     CGRect cellFrame = aCell.frame; 
     cellFrame.size.height = 520; 
     [aCell setFrame:cellFrame]; 

     [aCell   setCenter:_spinCenter]; 
     [[aCell layer] setAnchorPoint:CGPointMake(0.5, (_spinCenter.y/(self.frame.size.height+70)))]; 
    } 

    else{ 
      [aCell   setCenter:_spinCenter]; 
      CGRect frame = CGRectMake(60.f, 424.f, 200.f, 460); 
      [[aCell layer] setAnchorPoint:CGPointMake(0.5, _spinCenter.y/frame.size.height)]; 
    } 
    // Clockifying happens with "selectCellAtIndex:animated:". 
    } 
} 
+0

Здесь вы идете на эту ссылку. Это объясняет, как [как изменить ландшафт на портретный и наоборот на iPhone] [1] [1]: http://stackoverflow.com/a/13356988/1825557 –

ответ

1

Все, что вам нужно сделать, это поддерживать вращение в контроллере представления, который содержит вид, к которому вы добавляете клетки (самостоятельно в вашем примере).

Кроме того, обратите внимание, что в ландшафте (если ваш вид поддерживает вращение) высота окна равна (если в полноэкранном режиме) для просмотра ширины.
Поэтому вам придется пересмотреть следующую строку:

cellFrame.size.height = 520; 

В случае Lanscape ширина должна быть изменена вместо высоты ...

+0

Я попытался это, но почему-то его не работает для меня – Zubair

+0

Что именно не работает? Сдерживающий вид не вращается, или внутренние представления (ячейки) не вращаются? –

+0

Содержащийся даже не вращается – Zubair

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