尝试支持Landscape orientation,以下是图形代码。注意:aCell是UIControl类的对象:

- (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:".
  }
}

最佳答案

您需要做的就是在视图控制器中支持旋转,该控制器包含要向其中添加单元格的视图(在示例中为self)。

此外,请注意,在横向(如果视图支持旋转)中,窗口高度与视图宽度相等(如果在全屏模式中)。
因此,您将不得不重新考虑下一行:

cellFrame.size.height = 520;


如果是横向景观,应更改宽度而不是高度...

关于iphone - 支持横向定向到UIVIEWS圈:,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16441152/

10-13 03:50