0

在 Xcode ui builder 中,当设置 UIToolBar 的 UIBarStyle(例如 BlackTranslucent)时,UIToolBarItem 会匹配背景图像。UIToolBarItem 如何知道它应该使用哪种样式?

我正在尝试将自定义彩色图像放在常规背景图块的顶部(以编程方式将给定图像合并到背景图像的顶部)。我希望代码足够通用,以便能够处理所有 UIBarStyles。这意味着我想知道 UIToolBarItem 何时决定使用哪个背景并拦截它,以便我可以即时组合按钮图像。

4

1 回答 1

1

由于无法看到苹果对 UIBarbuttonItem 的实现,我认为他们实际上并不知道他们的 UIToolbar 的样式是什么。如果您仔细观察,它们具有与工具栏相同的 alpha 和相同的叠加层(表示子视图)。因此,作为子视图添加到此突出显示层下方的任何图像都应符合 UIToolbar 的样式。如果您想使用多个图像(每个 barStyle 一个),您可以self.myToolbar.barStyle在 -viewDidLoad 时确定并适当地计划。至于真正的图像绘制,子类 UIToolbar 并覆盖-drawRect:使用[UIImage drawInRect:rect];

于 2012-04-26T03:48:21.500 回答