Я сделал обычай UIView
с двумя текстовыми надписями и двумя кнопками. Он полностью работоспособен, когда он создан, но теперь я пытаюсь переместить его, когда экран вращается (т. Е. От портрета к пейзажу).Рамка UIView корректно обновляется при изменении ориентации
Несмотря на то, что элементы пользовательского интерфейса, кажется, правильно перемещены, фактический кадр UIView
заканчивается тем, что делает странные вещи, например, превращается в прямоугольник, когда он был первоначально квадратом и устанавливается на квадрат, но с разными x, y позиций.
Как я видел это, установив мои UIView
«цвета фона S черный и наблюдать, что мое фоновое изображение было втягивается, где я ожидал бы вид, который можно сделать, но UIView
» фон s становится другой формой и обращается в неправильном месте.
Вот мой код:
- (void) moveControls
{
CGRect frame;
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
switch (orientation)
{
case UIDeviceOrientationPortrait:
case UIDeviceOrientationPortraitUpsideDown:
frame = CGRectMake(0, 120, 320, 320);
break;
case UIDeviceOrientationLandscapeLeft:
case UIDeviceOrientationLandscapeRight:
frame = CGRectMake(120, 0, 320, 320);
break;
case UIDeviceOrientationFaceDown:
case UIDeviceOrientationFaceUp:
case UIDeviceOrientationUnknown:
return;
}
[self setFrame:frame];
backgroundImage.frame = CGRectMake(0,0, frame.size.width, frame.size.height);
titleLabel.frame = CGRectMake(0,50,frame.size.width,frame.size.height/2);
titleLabel.numberOfLines = 0;
titleLabel.lineBreakMode = NSLineBreakByWordWrapping;
textLabel.frame = CGRectMake(0,frame.size.height/3,frame.size.width,frame.size.height/3);
doneButton.frame = CGRectMake(frame.size.width - 154, frame.size.height - 90, 100, 34);
tellButton.frame =CGRectMake(54, frame.size.height - 90, 100, 34);
}
спасибо, но все еще то же самое. :( –