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 回答