2

このコードを使用して、App Delegate の UIToolbar の背景に画像を追加しています。

[[UIToolbar appearance] setBackgroundImage:
[UIImage imageNamed:@"toolbarbackground.png"] 
                             forToolbarPosition:0 barMetrics:UIBarMetricsDefault];

画像の幅は 768 ピクセルです (縦向きの iPad の画面幅のサイズ)。横向きに回転すると、画像が新しい画面幅 (1024 ピクセル) に収まるように伸びません。回転時に画面に合わせて伸縮する UIToolbar でカスタム背景画像を使用するにはどうすればよいですか?

4

2 に答える 2

2

ツールバーは自動サイズ変更されますか? そうでない場合は、自動サイズ変更マスクを設定します。

[myToolbar setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleRightMargin]

ツールバーが自動サイズ変更されても画像が変わらない場合contentModeは、画像ビューの を に設定しUIViewContentModeScaleToFillます。

于 2012-07-02T23:26:22.620 に答える
1
UIImage *navBarImagePortrait = [UIImage imageNamed:@"navbar-portrait"];
navBarImagePortrait = [navBarImagePortrait resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 0, 2)];
UIImage *navBarImageLandscape = [UIImage imageNamed:@"navbar-landscape"];
navBarImageLandscape = [navBarImageLandscape resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 0, 2)];

// custom NaviagionBar
[self.toobar setBackgroundImage:navBarImagePortrait forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];
[self.toobar setBackgroundImage:navBarImageLandscape forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsLandscapePhone];
于 2012-09-16T06:18:07.917 に答える