私UINavigationBar
には複数行のタイトルがあり、次のコードを使用してセットアップしています。
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 480, 50)];
label.backgroundColor = [UIColor clearColor];
label.numberOfLines = 2;
label.font = [UIFont boldSystemFontOfSize: 15.0f];
label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
label.textAlignment = NSTextAlignmentCenter;
label.textColor = [UIColor whiteColor];
label.text = @"Headloss due to Friction (Hazen Williams Eq.)";
self.navigationItem.titleView = label;
これはサブビュー上にあるため、 によって追加された「戻る」ボタンがありUINavigationController
ます。そのため、タイトルを追加するlabel.textAlignment = NSTextAlignmentCenter;
と中央に配置されると考えましたが、実際には、「戻る」ボタンの端から画面の端までタイトルを中央に配置しています。
これをオーバーライドして、画面のサイズに基づいてタイトルが実際に中央に配置されるようにするにはどうすればよいですか (基本的に、戻るボタンが存在しない場合のデフォルトの方法)。