Проблемы с выяснением пейзажных рамок и границ - PullRequest
0 голосов
/ 16 февраля 2011

Я пытаюсь расположить несколько пользовательских видов в приложении для iPad с альбомной ориентацией (сделал альбомную, удалив все упоминания интерфейса, кроме одного, в списке).Тем не менее, мой код в настоящее время не работает должным образом:

- (void)viewDidLoad { [super viewDidLoad];</p> <pre>LeftTableViewController *lvc = [[LeftTableViewController alloc] initWithNibName:@"LeftTableViewController" bundle:nil]; // Resize this view controller appropriately lvc.view.frame = CGRectMake(0, 0, 224, 768); [[self view] addSubview:lvc.view]; ReaderViewController *rvc = [[ReaderViewController alloc] initWithNibName:nil bundle:nil]; // Resize this view controller appropriately rvc.view.frame = CGRectMake(224, 0, 800, 768); [[self view] addSubview:rvc.view];

Я ожидал, что код выше даст мне LeftTableViewController полностью слева.Кажется, это работает, но мне пришлось удалить все маркеры размера с пера, чтобы получить его там.ReaderViewController должен занимать оставшееся пространство, но он занимает только около половины оставшегося пространства.Это изображение иллюстрирует это (ReaderViewController - это зеленое пространство, а приложение - фиолетовое).

http://i52.tinypic.com/z7d2.png

Мне кажется, что я неправильно понимаю что-то важное о кадрах и границах в ландшафтном режиме,Какие координаты для рамки или границ я должен установить, чтобы вид отображался так, как ожидалось, и почему?

1 Ответ

0 голосов
/ 16 февраля 2011

Координаты одинаковы для пейзажного и портретного режимов.Портрет - это 0,0 (слева, сверху) и 768,1024 (ширина, высота), 0,0 (слева, сверху) и 1024,768 (ширина, высота) для ландшафта.

Это довольно сложноответ, потому что мы не видим весь код и ваш файл XIB.Возможно, у вас неправильная маска авторазмера.

PS 768 - неверная высота, потому что у вас отображается строка состояния, которая имеет 20 пикселей.

...