На iPhone, когда вы вручную добавляете подпредставление в представление окна, нужно ли мне учитывать 20px верхней строки состояния ? То есть мне нужно создавать виды с установленным кадром (0, 20, 320, 460):
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0, 20, 320, 460)];
[window addSubview:myView];
Если так, существуют ли какие-либо официальные рекомендации, связанные с этим? Я просто застрял на нем, и после некоторых экспериментов кажется, что это действительно так. Это подразумевает, что когда представление создается из nib-файла, оно всегда тихо сдвигается на 20 пикселей вниз, потому что когда используется Interface Builder, высота представления уже установлена на 460 пикселей, а когда представление добавляется в окно, оно уже правильно установлен.
С другой стороны, это выглядит немного неуклюжим и недальновидным. Зачем Apple жестко закодировать 20 пикселей и сделать магическое смещение? Зачем мне как программисту знать и предполагать что-либо о строке состояния? Почему окно уже не смещено само по себе? Это известное ограничение / проблема? Или есть причина?