Chr*_*ris 8 iphone objective-c uikit uibarbuttonitem
我正在设定tintColor一个UIBarButtonItem.只要颜色是鲜艳的颜色,只要我尝试将其设置为darkGrayColor没有任何反应,实际上它会将色调更改为白色!但是,如果我改变颜色redColor然后就可以了......这里发生了什么?
UIBarButtonItem *penButton = [_toolBar.items objectAtIndex:3];
UIBarButtonItem *crossButton = [_toolBar.items objectAtIndex:4];
//This actually sets the tint to white not gray, which is odd?
[penButton setTintColor:[UIColor darkGrayColor]];
[crossButton setTintColor:[UIColor redColor]]; //Red is fine, as is green etc
Run Code Online (Sandbox Code Playgroud)
[UIColor redColor]和 之间的区别[UIColor darkGrayColor]在于,前者使用 RGB 值设置,后者使用灰度值设置,而后者UIBarButtonItem在某种程度上忽略了灰度值。您可以通过比较来测试这个理论:
[penButton setTintColor:[UIColor colorWithRed:0.5 green:0.5 blue:0.5 alpha:1.0]];
[penButton setTintColor:[UIColor colorWithWhite:0.5 alpha:1.0]];
Run Code Online (Sandbox Code Playgroud)
如果前者符合预期但后者不符合预期,则问题确实出在灰度上。否则我不知道是什么导致了这种行为。
| 归档时间: |
|
| 查看次数: |
1675 次 |
| 最近记录: |