У меня есть приложение для iPhone с основным видом, которое составляет 480 x 510. Я немного смущен относительно того, как меняется система координат, когда я перехожу от портрета к ландшафту.Начальная точка UIScrollView
Первоначально у меня была область содержимого 480x480, и вы хотели добавить кнопку сбоку, чтобы вызвать меню. Тем не менее, единственный способ, которым я мог найти, чтобы запись выполнялась по длине левой части приложения, заключалась в том, чтобы изменить ориентацию всего приложения на пейзаж справа.
Теперь, с ориентацией в Landscape, scrollview начинается в левом верхнем углу, когда я действительно хочу, чтобы он начинался с исходной точки ориентации (с момента, когда она была в портретном режиме), которая будет внизу слева. Но я не могу понять, как изменить исходную отправную точку прокрутки. Я попробовал contentOffset, но он, похоже, не работает.
Еще один способ обойти это (чтобы я мог закончить) - забыть о названии на кнопке и просто создать графический элемент для кнопки, которая имеет вертикально ориентированный текст.
if (self = [super initWithCoder:coder]) {
// Size of the scrollview
self.contentSize = CGSizeMake(480, 510);
[self setContentOffset:CGPointMake (0, -160)];
self.showsHorizontalScrollIndicator = YES;
self.showsVerticalScrollIndicator = YES;
self.alwaysBounceVertical = NO;
self.alwaysBounceHorizontal = NO;
self.bounces = YES;
self.userInteractionEnabled = YES;
self.musicGridView = [[[MusicGridView alloc] initWithCoder:coder] autorelease];
// Rectangle where I put the music grid (origin is left aligned, and down 160 pixels to account for landscape view)
self.musicGridView.frame = CGRectMake(0, 160, 480, 480);
[self addSubview: musicGridView];
self.menuButton = [UIButton buttonWithType:UIButtonTypeCustom];
self.menuButton.frame = CGRectMake(0, 480, 480, 32);
[menuButton setTitle: @"Tap to get Menu" forState: UIControlStateNormal];
[menuButton setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
[menuButton addTarget:self action:@selector(showMenu) forControlEvents:UIControlEventTouchUpInside];
[self addSubview: menuButton];