旋转到横向
问题描述:
我使用此代码添加一个图像到UIToolbar的在App代表背景当拉伸UIToolbar背景图像:旋转到横向
[[UIToolbar appearance] setBackgroundImage:
[UIImage imageNamed:@"toolbarbackground.png"]
forToolbarPosition:0 barMetrics:UIBarMetricsDefault];
的图像的宽度是768个像素(iPad屏幕的大小纵向宽度)。当我旋转到横向时,图像不会伸展以填充新的屏幕宽度(1024像素)。如何在UIToolbar上使用自定义背景图像,以便在旋转时适合屏幕?
答
工具栏是否自动调整大小?如果不是,设置它的自动调整面膜:
[myToolbar setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleRightMargin]
如果工具栏不自动调整大小和图像仍然不中,设置图像视图的contentMode
至UIViewContentModeScaleToFill
。
答
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];