我目前正在开发一个iOS项目,但我遇到了一个烦人的问题。
当我将相同的颜色设置为两个不同的UIBarButtonItem
时,它们会显示不同的颜色。
代码:
#define UIColorFromRGB(rgbValue) [UIColor \
colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \
green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0]
UIBarButtonItem *saveButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemSave target: self action: @selector(save)];
saveButton.tintColor = UIColorFromRGB(0xFF8100);
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target: self action: @selector(backButtonPressed)];
backButton.tintColor = UIColorFromRGB(0xFF8100);
self.navigationItem.leftBarButtonItem = backButton;
self.navigationItem.rightBarButtonItem = saveButton;
答案 0 :(得分:4)
这是因为系统提供的保存按钮(UIBarButtonSystemItemSave)与其他按钮的颜色不同,以指示按钮的确认或保存性质。
如果您想使用相同颜色的“保存”按钮,可以使用常规按钮并将标题设置为“保存”。
UIBarButtonItem *saveButton = [[UIBarButtonItem alloc]
initWithTitle:@"Save"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(save)];
saveButton.tintColor = UIColorFromRGB(0xFF8100);