Хорошо, я решил это по-другому.
Я создал headerView и контроллер, а также подкласс UIViewController для всех представлений, для которых требуется отображать заголовок, загружая их все вместе с заголовком. Примерно так:
@implementation MyDefaultViewController
- (void)viewDidLoad {
[super viewDidLoad];
MyTestAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
[self.view addSubview: [appDelegate.headerViewController view]];
}
Каждое представление, для которого нужен заголовок, будет иметь контроллер, который является подклассом MyDefaultViewController. Кажется, работает, хотя тот факт, что я не указываю, где разместить заголовок, пугает меня немного xD