我有那个导航控制器,我按这样的方式添加了1个按钮:
UIBarButtonItem *configButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"config.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(showConfigWindow)];
self.navigationItem.leftBarButtonItem = configButton;
它工作正常,但图标是黑色而不是白色!!
如果我使用它:
UIBarButtonItem *configButton = [[UIBarButtonItem alloc] initWithTitle:@"Settings" style:UIBarButtonItemStyleBordered target:self action:@selector(showConfigWindow)];
文字以白色显示。
图标正常,因为我通过界面构建器使用它们并显示正确。
答案 0 :(得分:0)
UIBarButtonItem
根据图像alpha值渲染灰度图像。因此,如果您的图像完全不透明,那么无论源图像是什么颜色,它都将始终呈现黑色,但如果您的图像是透明的,它将呈现一些灰色阴影。
要将其呈现为白色或全彩色,您需要创建自定义UIBarButtonItem
。有关详细信息,请参阅Can I have a UIBarButtonItem with a colored image?