0

iPad で高さ 80 のカスタム ナビゲーション バーを作成しました。この場合、bask ボタン フレームで問題が発生します。

ナビゲーション バーの高さは増加しましたが、戻るボタンの高さは以前と同じで、ナビゲーション バーの高さは 44 です。ここではナビゲーション バーの高さが 80 に増加するため、それに応じて戻るボタンのフレームも変更したいと考えています。

カスタムの戻るボタンを追加できることはわかっていますが、各画面の名前で 15 ビューの 15 画像を作成したくありません。デフォルトの戻るボタンのフレームを変更したい。

ここにナビゲーションバーをカスタマイズするための私のコードがあります

#import "UINavigationBar+navbar.h"

@implementation UINavigationBar (navbar)

- (CGSize)sizeThatFits:(CGSize)size {
     if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
         CGSize newSize = CGSizeMake(self.frame.size.width,44);
         return newSize;
     }
     else{
         CGSize newSize = CGSizeMake(self.frame.size.width,80);
         return newSize;
     }
}
4

2 に答える 2

0

UIImageView で BarButtonItem を作成すると、カスタム UIImageView のフレームを変更できます。

   UIImageView* imageView = [[[UIImageView alloc] initWithFrame:navigationController.navigationBar.frame] autorelease];
imageView.contentMode = UIViewContentModeLeft;
imageView.image = [UIImage imageNamed:@"NavBar-iPhone.png"];
[navigationController.navigationBar insertSubview:imageView atIndex:0];
于 2013-10-31T08:20:48.813 に答える