我已使用UIBarButtonItem
在AppDelegate.m中自定义了UIAppearance
,并且所有条形按钮都显示正常和选定状态下的正确图像。
我希望“完成”和“保存”按钮使用不同的图像(因此它们看起来是蓝色而不是灰色),因此我使用-setBackgroundImage: forState: barMetrics
为UIControlStateNormal
设置了两个不同的图像UIControlStateSelected
中的-viewDidLoad
。
UIControlStateNormal
的图片工作正常,但UIControlStateSelected
没有显示,而是显示我在AppDelegate.m中用于选定状态的原始图像。如果我注释掉原始图像,则会正确显示新的(蓝色)图像。
为特定按钮设置不同背景图像的正确方法是什么?
答案 0 :(得分:1)
我相信UIControlStateHighlighted
正是您所寻找的。
只要收到用户触摸,UIBarButtonItem
就会进入突出显示状态。 UIControlStateSelected
通常用于在两个州之间切换的UI元素。