【发布时间】:2011-03-21 14:59:06
【问题描述】:
我想使用一些我也用于 iOS 标签栏的图像来创建一些自定义工具栏。如何像 Apple 在 Tab Bar 上那样突出显示图标?
【问题讨论】:
标签: iphone ios icons core-graphics uitabbar
我想使用一些我也用于 iOS 标签栏的图像来创建一些自定义工具栏。如何像 Apple 在 Tab Bar 上那样突出显示图标?
【问题讨论】:
标签: iphone ios icons core-graphics uitabbar
请注意,我没有亲自这样做,但如果我有需要和时间的话,我会这样做。
UIToolBar好像是用3层实现的效果:
底部和第二层都可以是使用[UIImage stretchableImageWithLeftCapWidth::] 制作的适合任意尺寸的预渲染图像。
要将最顶层的 Alpha 通道应用到第二层,请使用 UIContextDrawImage 将最顶层的图像绘制到第二层的图像上,混合模式为 kCGBlendModeSourceIn。然后将结果合成到最底层图像的顶部,您应该会得到类似于 UIToolBar 呈现的内容。
【讨论】:
看看UIButton reference,您可能会想创建一个实例然后使用;
- (void)setImage:(UIImage *)image forState:(UIControlState)state
UIControlState 有这些可能的值;
UIControlStateNormalUIControlStateHighlightedUIControlStateDisabledUIControlStateSelectedUIControlStateApplicationUIControlStateReserved还有属性showsTouchWhenHighlighted,默认为NO,但在点击时会在按钮周围发光。
【讨论】: