0

我正在使用UIAppearanceiOS 5 中的介绍为我的应用程序中的所有 BarButtonItems 设置自定义背景图像。

以下代码是我用来设置后退按钮的代码,它在纵向模式下工作正常。但是,当手机旋转到横向并调整导航栏的大小时,按钮根本不会调整大小并且在底部被切断。

我认为它会自动执行此操作,因为我将边缘插图设置为不关心垂直调整大小。有任何想法吗?

UIImage *colorViewBBIImage = [[UIImage imageNamed:@"backButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 17, 0, 7)]; 

[[UIBarButtonItem appearance] setBackButtonBackgroundImage:colorViewBBIImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

我的非视网膜图像是 30px x 31px。

4

1 回答 1

2

对于横向模式,只需使用最后一个参数 UIBarMetricsLandscapePhone 调用代码的第二行

[[UIBarButtonItem appearance] setBackButtonBackgroundImage:colorViewBBIImage forState:UIControlStateNormal barMetrics:UIBarMetricsLandscapePhone];
于 2013-02-14T21:18:26.757 回答