【发布时间】:2013-10-04 19:13:59
【问题描述】:
我正在尝试使用以下代码在 iOS7 上的 UIToolbar 中为 UIBarButtonItem 设置自定义背景图像。
NSString *imageName = selected ? @"background_view_baritem_selected" : @"background_view_baritem_normal";
UIImage *backgroundImage = [UIImage imageNamed:imageName];
UIImage *resizableBackgroundImage = [backgroundImage resizableImageWithCapInsets:UIEdgeInsetsMake(6, 6, 6, 6)];
[self setBackgroundImage:resizableBackgroundImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
在调试器中,使用 QuickLook,我可以验证 resizableBackgroundImage 是否符合我的预期(选中时为蓝色圆角矩形,通常为灰色圆角矩形)。但是,不会出现背景图像。此代码在 iOS6 上按预期工作(显示背景图像)。在这种情况下,iOS7 是强加其意志而不显示背景,还是我缺少的其他东西?
【问题讨论】:
-
我正在我的代码中执行确切的调用顺序,我的自定义图像在 iOS 7 中显示得很好(我现在在我的代码中,只是仔细检查了它)。我还尝试了使用和不使用导航栏的自定义图像,无论哪种方式都可以正常工作。
-
如果你绝望了,你可以尝试将
customView属性设置为包含图像的UIImageView。希望这会有所帮助;) -
@HaIR 这似乎适用于导航栏,但不适用于工具栏。
标签: ios ios7 uibarbuttonitem uitoolbar