界面:关于tintColor

长久以来被tintColor困惑,做了下面2点研究

一. 图片的tintColor

一个彩色图片,png或jpg或pdf,本来有自己的颜色.如图1-1


1-1

如果在 image asset处,选择Render As Template image ,如图1-2 

1-2

那么显示的时候,这个图片的有颜色的部分就失去了原来的颜色,如图1-4,它们的颜色会随着所在的ImageView的tintColor变化了. (因为默认是蓝色的,所以显示出蓝色,这里还可以改变imageView或其父View的tintColor 如图1-3)

1-3
1-4

so, 可以这么理解, tintColor是一个视图的着色部分,如果视图被设置为template,就能看到tintColor,如果是原图,就没有tintColor

对UIButton和segment等控件来说,tintColor是它们"线条"的颜色,如:button的字的颜色,segment边框的颜色,等

对UINavigationBar,tab bars, toolbars, search bars, scope bars,UIProgressView,这些的背景色可以用barTintColor属性来处理.比较特殊一点,因为本来上说,tintColor不等于backgroundColor


参考文档:

http://www.cocoachina.com/ios/20150703/12363.html  讲述了tintColor

http://benbeng.leanote.com/post/4%E4%B8%AA%E4%BD%A0%E9%9C%80%E8%A6%81%E7%9F%A5%E9%81%93%E7%9A%84Asset-Catalog%E7%9A%84%E7%A7%98%E5%AF%86   讲述了image asset的4个技巧

以上两篇都是翻译的外国的博客

http://www.68idc.cn/help/buildlang/ask/20150124188072.html 讲述了tintColor和backgroundColor的区别

你可能感兴趣的:(界面:关于tintColor)