我正在使用 Xcode 4.2 开发 iOS 5 应用。
在 Storyboard 中,我有一个带有 UIToolbar 的 View ,其中有 3 个项目。最后一项是 UIBarButtonItem。我想在用户点击它时更改此 UIBarButtonItem 的 tintColor,直到它所做的被取消。
我已将 UIBarButtonItem 设为 Controller 中的 socket ,代码如下:
@property (weak, nonatomic) IBOutlet UIBarButtonItem *upArrowButton;
...
@synthesize upArrowButton = _upArrowButton;
...我正在像这样更改 tintColor:
self.upArrowButton.tintColor = [UIColor greenColor];
然而,当 tintColor 发生变化时,按钮会消失,并且一个新按钮(具有正确的新 tintColor)会从左侧在屏幕上显示动画。
知道我犯了什么错误吗?
更新:
我已经找到了问题的根源,这是因为在 animateWithDuration 动画 block 中调用了更改 tintColor 的方法。
最佳答案
这种特殊行为的根源是因为我在 animateWithDuration 动画 block 中调用了更改 tintColor 的方法。从而使 tintColor 的变化成为“动画”。
关于ios - 在 UIToolbar 中更改 UIBarButtonItem 上的 tintColor 会导致按钮消失并从左侧开始动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8977256/