У меня есть пара контроллеров представления, которые я хочу, чтобы все разделяли строку состояния заголовка.Этот вид заголовка показывает состояние определенных вещей в моем приложении.Я использовал IB для разметки содержимого представления заголовка в его собственной xib, затем также использовал IB для разметки контроллеров представления, добавляя элемент-заполнитель UIView в xibs контроллера представления, когда я загружаю в заголовок программно.
Теперь, когда я создаю подкласс UIView из содержимого xib представления и добавляю его в качестве subview к представлению любого из моих контроллеров представления, местоположение, которое я указал для представления заголовка в моем xib контроллера представления, кажетсяигнорируется, и представление заголовка помещается в (0,0), несмотря ни на что.Все содержимое представления заголовка загружается и отображается нормально, это просто расположение представления заголовка в контроллере представления, которое является неправильным.
Вот как я загружаю и добавляю свое представление заголовка в мой контроллер представления:
header = [InfoHeader loadFromNib:MY_NIB_NAME withOwner:self];
[self.view addSubview:header];
Подтверждено, что у xib контроллера представления есть выход, подключенный к переменной header.И вот этот метод loadFromNib:
+(InfoHeader *) loadFromNib: (NSString *) nibName withOwner:(id) objectOwner
{
NSBundle *b = [NSBundle mainBundle];
NSArray *nib = [b loadNibNamed:nibName owner:objectOwner options:nil];
InfoHeader *header;
for (id obj in nib)
{
if ([obj isKindOfClass:[InfoHeader class]])
{
header = (InfoHeader *) obj;
}
}
return header;
}
Есть идеи, что здесь проверить?Я бы предпочел не размещать панель заголовков программно, но пусть IB сделает это.